我希望我的按钮是“垃圾邮件”。这意味着如果我反复点击按钮,MediaPlayer将重新开始。
firstButton.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View v) {
if (firstTextView.getText().equals("Hello world!")) {
firstTextView.setText("You clicked!");
} else {
firstTextView.setText("Hello world!");
}
if (mediaPlayer.isPlaying()) {
mediaPlayer.stop();
}
mediaPlayer.start();
}
});
当我在播放时中断MediaPlayer时,它会停止并且永远不会再次启动。为什么呢?
编辑:问题是我调用了stop()。感谢您指出了这一点。
答案 0 :(得分:2)
根据documentation,您需要重新准备MediaPlayer
(强调我的):
一旦处于停止状态,播放无法启动,直到 调用
prepare()
或prepareAsync()
来设置MediaPlayer对象 再次进入准备状态。
答案 1 :(得分:1)
似乎您正在停止播放器,因为您正在呼叫mediaPlayer.stop()
这会使MediaPlayer
状态进入Stopped
状态。当您拨打prepare()
或prepareAsync()
时,它会继续播放,并且会启动其准备回调以启动播放媒体。