阵列适配器无法正常工作

时间:2014-05-19 03:52:15

标签: java android arrays xml

我有一个阵列,我想添加曲目列表!这很简单,但我的ListViewArrayAdapter工作正常,我遇到了很大的问题。我尝试移动setAdapterAdapter的实际声明,但它不起作用。澄清,它的工作原理但我得到相同的歌曲大约800次。我已经测试了获取标题名称的过程,但它有效,但是ListView

有问题

CODE:

ListView songList = (ListView) findViewById(R.id.ListView);

TextView Test = (TextView) findViewById(R.id.textView2);

String fileType = ".mp3";

String[] myFile = new String[800];

File[] listFile = directory.listFiles();

adapter = new ArrayAdapter(getApplicationContext(), android.R.layout.simple_list_item_1, myFile);

for (int i = 0; i < listFile.length; i++) {

    if (listFile[i].isDirectory()) {
        walkdir(listFile[i]);
    } else {
        if (listFile[i].getName().endsWith(fileType)) {
            myFile[i] = listFile[i].getName().toString();
        }
    }
        songList.setAdapter(adapter);
}

1 个答案:

答案 0 :(得分:3)

尝试使用ArrayList而不是String [800]:

ArrayList<String> myFile = new ArrayList<String>;

File[] listFile = directory.listFiles();

for (int i = 0; i < listFile.length; i++) {

    if (listFile[i].isDirectory()) {
        walkdir(listFile[i]);
    } else {
        if (listFile[i].getName().endsWith(fileType)) {
            myFile.add(listFile[i].getName().toString());
        }
    }

}

adapter = new ArrayAdapter(getApplicationContext(), android.R.layout.simple_list_item_1, myFile);

songList.setAdapter(adapter);