2012-01-31 49 views
0

我正在使用可展開列表視圖來顯示我的應用程序中的文件夾和文件。但是,由於我的應用程序允許用戶添加文件,該列表將混亂起來。所以,我的意圖是將排序列表(名稱)設置爲我的子列表。如何對數組/列表進行排序並在android中返回結果?

我知道有Arrays.sort和Collections.sort,但是這兩種方法都是無效的,而不是返回列表。

那麼我該怎麼做呢?

我的列表:

private File recordImageFolder = new File (Environment.getExternalStorageDirectory(),"/Record/Image"); 
    private File recordSoundFolder = new File (Environment.getExternalStorageDirectory(),"/Record/Sound"); 

    private String[] groups = { "Image", "Sound" }; 
    private String[][] children = { recordImageFolder.list(), recordSoundFolder.list() }; 

回答

0

相反初始化其聲明中,這些領域的成員,你可以在構造函數或init方法初始化它們,讓您使用Arrays.sort(Object[])

private File recordImageFolder; 
private File recordSoundFolder; 

private String[] groups; 
private String[][] children; 

public MyClass() { 

    recordImageFolder = new File (Environment.getExternalStorageDirectory(),"/Record/Image"); 
    recordSoundFolder = new File (Environment.getExternalStorageDirectory(),"/Record/Sound"); 

    String[] recordImages = recordImageFolder.list(); 
    String[] recordSounds = recordSoundFolder.list(); 

    Arrays.sort(recordImages); 
    Arrays.sort(recordSounds); 

    groups = new String[] { "Image", "Sound" }; 
    children = new String[][] { recordImages, recordSounds }; 
} 
+0

呃.. ..你提供的代碼甚至不起作用。它包含錯誤「數組常量只能用於初始化器」當我放置組= {「圖像」,「聲音」};在另一種方法 – Jovi 2012-01-31 03:09:53

+0

對不起,我糾正它。 – 2012-01-31 03:23:55

+0

感謝您的回答! – Jovi 2012-01-31 05:04:22

相關問題