簡體   English   中英

聲音文件作為android MediaPlayer中的變量

[英]Sound file as variable in android MediaPlayer

在學習android / java的過程中,我想創建一個可以從原始文件夾中播放特定聲音的函數。

我試圖將聲音文件定義為字符串,以便可以重復使用該功能。 但是,我堅持“無法解析符號”。

public class MainActivity extends ActionBarActivity {
MediaPlayer player;

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);
    playSound("dogBark");
}

public void playSound(String soundFile) {
    player = MediaPlayer.create(MainActivity.this,R.raw.soundFile); // Cannot resolve symbol 'soundFile'
    player.setLooping(true);
    player.start();

}
...

我確信這是一個基本的缺乏知識的問題,但是任何幫助將不勝感激。

編輯:

如果我在函數中添加實際的聲音文件,則上述函數可以很好地工作:

player = MediaPLayer.create(MainActivity.this,R.raw.dogBark);

但是我想做的是在調用函數時定義聲音文件:

playSound("dogBark");

您可以這樣做,對我來說很好:

playMp3("titanic");

添加此方法:

private void playMp3(String nameOfFile){
   MediaPlayer mPlayer = MediaPlayer.create(this, getResources().getIdentifier(nameOfFile, "raw", getPackageName()));
   mPlayer.start();
}

這將為您確定工作。

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM