【发布时间】:2014-02-14 11:12:40
【问题描述】:
我正在尝试编写一个带有多个按钮的 Android 音板。每个按钮都应该播放不同的声音。
我在每个按钮上都有一个 OnClickListener:
buttonAlan.setOnClickListener(new View.OnClickListener() {
public void onClick(View v) {
playSound("alan");
}
});
每个按钮都调用以下函数。
private void playSound(String sound) {
int path = getResources().getIdentifier(sound, "raw", getPackageName());
mediaplayer = MediaPlayer.create(this, path);
try {
mediaplayer.prepare();
} catch (IllegalStateException e) {
// TODO Auto-generated catch block
e.printStackTrace();
} catch (IOException e) {
// TODO Auto-generated catch block
e.printStackTrace();
}
mediaplayer.start();
}
音板可以工作,但每次单击按钮时,它都会一遍又一遍地播放声音。我需要媒体播放器停止播放,但每次我写类似 mediaplayer.stop() 的东西时,应用程序根本无法工作。 有什么建议我应该在我的函数/代码中更改吗?
【问题讨论】:
标签: java android android-mediaplayer