在Android中播放和停止MediaPlayer

时间:2012-07-13 19:10:19

标签: java android android-mediaplayer

Button b = (Button) findViewById(R.id.button1);
b.setOnClickListener(new OnClickListener() {
    MediaPlayer mp = MediaPlayer.create(main.this, R.raw.lastmohican);
    public void onClick(View arg0) {
        // TODO Auto-generated method stub
        if (mp.isPlaying()) {
            mp.stop();
        } else {
            mp.start();
        }
    }
}

我可以通过一次点击播放此音乐,然后点击另一个音乐停止,但是当我一起点击音乐时,音乐无法启动。知道为什么吗?

2 个答案:

答案 0 :(得分:3)

我不确定我理解你的问题,但是如果你想知道为什么在第三次按下按钮后音频不会重新启动,那是因为你在媒体播放器上呼叫stop()何时应该致电pause()。停止要求您在开始播放之前再次准备媒体。看看MediaPlayer Documentation。如果这不是您的问题,您需要提供更好的描述。

答案 1 :(得分:2)

它解决了你应该改变这种类型的代码

if (mp.isPlaying()) {
    mp.stop();
    mp.prepareAsync();
    mp.seekTo(0);
} else {
    mp.start();
}