我試圖爲我的鬧鐘應用程序設置鈴聲。爲此,我需要在SD卡中的各種文件夾和子文件夾中顯示帶有.mp3擴展名的所有歌曲。顯示SD卡中存在的所有文件夾和子文件夾的MP3文件
我只想要顯示.mp3文件,而不是任何文件夾/子文件夾。我已經有了一個編碼,用於從SD卡中顯示歌曲,而不是從子文件夾中顯示歌曲。所有編碼都只能從我不需要的特定文件夾中檢索歌曲。我需要sd卡中存在的每首mp3歌曲。
public class Mp3filterActivity extends Activity{
final String MEDIA_PATH = new String("/sdcard/");
public void onCreate(Bundle savedInstanceState){
super.onCreate(savedInstanceState);
setContentView(R.layout.main);
ListView listsong =(ListView)findViewById(R.id.songlist);
ArrayList<String> mp3list = new ArrayList<String>();
mp3list=mp3select();
Toast.makeText(this, "mp3files" +mp3list, Toast.LENGTH_LONG).show();
ArrayAdapter<String> listAdapter=new ArrayAdapter<String>(Mp3filterActivity.this,android.R.layout.simple_list_item_1,mp3list);
listsong.setAdapter(listAdapter);
}
public ArrayList<String> mp3select(){
File home = new File(MEDIA_PATH);
ArrayList<String> list = new ArrayList<String>();
//if (home.isDirectory())
if (home.listFiles(new FileExtensionFilter()).length > 0)
{
for (File file : home.listFiles(new FileExtensionFilter()))
{
list.add(file.getName().substring(0, (file.getName().length() - 4)));
}
}
return list;
}
class FileExtensionFilter implements FilenameFilter
{
public boolean accept(File dir, String name) {
return (name.endsWith(".mp3") ||name.endsWith(".MP3"));
}
}
}
@ user147969老兄你真正需要學習的基本知識作爲你的問題'如何添加getMp3()方法「我建議你參考以下基本教程。[鏈接] http://androidsamples.blogspot.in/2009/06/displaying-list-of -music-files-stored.html – 2014-04-06 16:56:01