我有两个按钮可以启动和停止一首歌,当我启动应用程序时,我可以播放该歌曲然后再次停止。但是,当我想再次开始它时,它不起作用。
final Button stop = (Button) findViewById(R.id.stop);
stop.setVisibility(View.GONE);
final Button play = (Button) findViewById(R.id.play);
play.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
mp.start();
play.setVisibility(View.GONE);
stop.setVisibility(View.VISIBLE);
}
});
stop.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
// TODO Auto-generated method stub
mp.stop();
stop.setVisibility(View.GONE);
play.setVisibility(View.VISIBLE);
}
});
答案 0 :(得分:4)
我想你想通过播放按钮重新开始。在mp.start()
方法上方添加以下代码:
mp.reset();
mp.prepare();
mp.start();
我猜你还有其他设置正确,在停止按钮中使用以下内容:
if (mp != null) {
mp.stop();
mp.release();
mp = null;
}
答案 1 :(得分:2)
在play.onclicklistener
中 mp = MediaPlayer.create(Peshmerga.this, R.raw.sppeshmerga);
mp.start();
将以下内容添加到您的stop.onclicklistener
if (mp != null) {
mp.stop();
mp.release();
mp = null;
}
每次点击播放按钮都需要创建。
答案 2 :(得分:0)
查看以下链接中的状态图图像:
----------------------------------------- android-mediaplayer-sample-code - ---------------------------------------------
mp.reset();
mp.prepare();
mp.start();