我想初始化MediaPlayer
情況下爲所有在res/raw
發現聲音文件的:如何動態獲取/ res/raw中的所有媒體文件?
/res/raw/test1.mp3
/res/raw/test2.mp3
/res/raw/testN.mp3
目的是點擊一個按鈕扮演不同的樣品,沒有延遲。
List<MediaPlayer> player = new ArrayList<>();
//TODO how to loop properly?
for (Rawfile file : rawfiles) {
pl = MediaPlayer.create(getBaseContext(), R.raw.test1);
player.add(pl);
}
Lateron,如果如按鈕2點:
player.get(1).start();
問:我怎樣才能得到動態應用程序的初始化過程中R.raw.*
文件?
更新:下面是相當接近,但也有2個問題:
1)如果如只有一個文件「請將test.mp3」被放置在我的文件夾/res/raw
,功能顯示3個文件。 2)我怎樣才能將這些文件加載到mediaplayer?
public void listRaw(){
Field[] fields=R.raw.class.getFields();
for(int count=0; count < fields.length; count++){
Log.i("Raw Asset: ", fields[count].getName());
}
}
結果:
I/Raw Asset:: $change
I/Raw Asset:: serialVersionUID
I/Raw Asset:: test
檢查[android-how-do-can-i-get-a-list-of-all-files-in-a-folder](https://stackoverflow.com/questions/6539715/android-how- do-can-i-get-a-list-of-all-files-in-a-folder) – ELITE
@ELITE這會給出3個文件,如上所述。但我只有一個... – membersound