我最近尝试创建一个“Play”按钮,当按下此按钮时,我希望它播放音乐然后将文本更改为“停止”,但它会抛出错误并退出应用程序。这是我的代码:
mPlay.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
if(ourMusic.isPlaying()){
ourMusic.pause();
mDisplay.setText("Play");
}else{
ourMusic = MediaPlayer.create(MainActivity.this, R.raw.killthenoise);
ourMusic.start();
mDisplay.setText("Stop");
}
}
});
因此,如果您按下按钮一旦它应该播放,再次按下它应该停止音乐。实际编码没有错误。 这是我的logcat:http://pastie.org/7970711
我对这些东西不熟悉,所以我不知道发生了什么。任何帮助将不胜感激。
答案 0 :(得分:2)
请改用:
@Override
public void onClick(View v) {
if (ourMusic == null) {
ourMusic = MediaPlayer.create(MainActivity.this, R.raw.killthenoise);
}
if(ourMusic.isPlaying()){
ourMusic.pause();
mDisplay.setText("Play");
}else{
ourMusic.start();
mDisplay.setText("Stop");
}
}
基本上不要:
ourMusic
ourMusic
。答案 1 :(得分:0)
添加全局变量boolean flag = false;
{{1}}
如果您想在应用中使用与PLAY / PAUSE相同的按钮,此代码将起作用。 希望这会有所帮助。