1

Android アプリケーションに問題があります。

ユーザーがリストビューから「選択」したフォルダーのすべてのファイルを表示する必要があります。あるアクティビティでそれを行うとうまく機能しますが、他のアクティビティリストビューで選択したフォルダーのファイルを表示する必要があります。

例えば:

アクティビティAのリストビューでフォルダーのリストに移動します

  • フォルダ:
  • テスト
  • テストフォルダ
  • ...その他のフォルダ

たとえば、フォルダー「testfolder」にはテキストファイルが含まれているため、「testfolder」をクリックすると、アクティビティ B のリストビューにテキストファイルを表示する必要があります

public class FolderActivity extends Activity {

EditText folderName;
ListView listView;
String CURRENT_FOLDER = Environment.getExternalStorageDirectory().toString()+"/AppicationTest";

@Override
public void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_folder);


    Button button = (Button)findViewById(R.id.go);  


    createFolderOnStart();

    refreshDirectory();


    listView.setOnItemClickListener(new AdapterView.OnItemClickListener() {

        public void onItemClick(AdapterView<?> lista, View arg1, int position, long arg3) {
            Intent intent = new Intent(getApplicationContext(), ShowFiles.class);

            File file = new File(CURRENT_FOLDER + "/" + lista.getItemAtPosition(position));                                     

            if(file.canRead()){
                if(file.isDirectory()){
                    String[] list = file.list();

                    CURRENT_FOLDER += "/" + lista.getItemAtPosition(position);

                    listView.setAdapter(new ArrayAdapter<String>(getBaseContext(), android.R.layout.simple_list_item_1, list)); 

                    intent.putExtra("files", list);

                }
            }
            startActivity(intent);
        }
    });
}

これが最初のアクティビティのコードです。

2 番目のアクティビティのリストビューにファイルを表示するにはどうすればよいですか?

4

1 に答える 1

1

インテントを通過することにより、現在選択されているフォルダーのフル パスをアクティビティ B に渡します。Bアクティビティで同じものを解析し、ファイルを表示します

于 2012-09-14T13:42:40.747 に答える