2
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();
        }
    }
}

我可以通过单击播放此音乐,然后单击音乐停止,但是当我一起单击时,音乐不会开始。知道为什么吗?

4

2 回答 2

3

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

于 2012-07-13T22:45:45.310 回答
2

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

if (mp.isPlaying()) {
    mp.stop();
    mp.prepareAsync();
    mp.seekTo(0);
} else {
    mp.start();
}
于 2012-07-25T20:25:59.153 回答