【发布时间】:2013-06-13 16:06:17
【问题描述】:
我想在用户点击按钮时播放两个不同的声音文件
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
playSound(this,R.raw.s1);
playSound(this,R.raw.s2);
}
public static void playSound(Context context, int soundID){
MediaPlayer mp = MediaPlayer.create(context, soundID);
mp.start();
}
这个代码的问题是 s1 和 s2 文件同时播放,我想播放 s1 然后如果 s1 完成播放 s2 文件,我该怎么做?
【问题讨论】:
-
您是否尝试将 CompletionListener 添加到您的 MediaPlayer? stackoverflow.com/questions/7367997/…
-
对于这种事情,我建议使用
SoundPool而不是 MediaPlayer (developer.android.com/reference/android/media/SoundPool.html) -
@KenWolf 为什么要他使用 SoundPool 对象?
-
@ZouZou 我发现同时播放短音效果更好。我猜这个用例更像是音效,而不是说两首歌一起播放。可能是错的! (google.co.uk/search?q=mediaplayer+vs+soundpool)
标签: android audio media-player