我有一个阵列,我想添加曲目列表!这很简单,但我的ListView
和ArrayAdapter
工作正常,我遇到了很大的问题。我尝试移动setAdapter
和Adapter
的实际声明,但它不起作用。澄清,它的工作原理但我得到相同的歌曲大约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);
}
答案 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);