2012-07-04 77 views
0

我創建了一個活動,它將顯示手機中所有目錄的多項選擇列表。 到目前爲止,我只設法顯示只有父文件夾的列表。 我想要當用戶點擊一個項目(不是在複選框上)時,它應該展開以顯示其子文件夾(也是多選列表)。 這是我迄今爲止所做的。目錄列表muliplechoice選擇列表

Parent1 
Parent2 
Parent3 
Parent4 

我想,如果用戶選擇Parent1,然後將其與子文件夾將展開爲:

Parent1 
- Sub-Folder1 
- Sub-Folder2 
Parent2 
Parent3 
Parent4 

下面是我的代碼至今:

public class DirectoryListing extends Activity { 

    ListView dirlv; 

    @Override 
    protected void onCreate(Bundle savedInstanceState) { 
     super.onCreate(savedInstanceState); 
     setContentView(R.layout.directorylisting); 
     try { 
      ArrayList<String> dirList = new ArrayList<String>(); 
      dirList = getAllDirList(); 
      ArrayAdapter<String> adapter = new ArrayAdapter<String>(this, 
        android.R.layout.simple_list_item_multiple_choice, android.R.id.text1, 
        dirList); 
      dirlv = (ListView) findViewById(R.id.lvDirList); 
      dirlv.setAdapter(adapter); 
      dirlv.setChoiceMode(ListView.CHOICE_MODE_MULTIPLE); 
     } catch (Exception e) { 
      Toast.makeText(this, e.toString(), Toast.LENGTH_SHORT); 
     } 

    } 

    private ArrayList<String> getAllDirList() { 
     ArrayList<String> result = new ArrayList<String>(); 
     File home = new File("/"); 
     File[] files = home.listFiles(); 
     for (File file : files) { 
      if (file.isDirectory()) { 
       result.add(file.getName()); 
      } 
     } 
     return result; 
    } 
} 

回答