如何仅使用1个媒体播放器停止或暂停MediaPlayer? 例如,我有网格视图。当我点击按钮时我想要的是播放声音。 但这里很棘手。当我再次点击按钮时,它不会停止它,而是它静止的声音并从头开始播放。 我试着添加
else{
mp.pause
mp.seekTo(0);
}
但它没有用。它给了我错误 这是我的代码:
case 24:
if(mp!=null)
{
mp.release();
mp=null;
}
mp = MediaPlayer.create(Glavni.this, R.raw.s25snd);
mp.start();
break;
答案 0 :(得分:0)
您应该可以暂停曲目
Mediaplayer.pause();
length=Mediaplayer.getCurrentPosition();
保存长度,然后以该长度恢复
Mediaplayer.seekTo(length);
Mediaplayer.start();
答案 1 :(得分:0)
你需要这样的东西:
if (mp == null) {
initMediaPlayer();
}
...
if (mPrepared && mHasStarted && mp.isPlaying()) {
mp.pause();
} else if (mPrepared) {
mHasStarted = true;
mp.start();
}
一旦准备好媒体播放器,mPrepared就是真的。如果仔细查看状态图和表,您会注意到在开始播放之前调用pause()是错误的。如果这确实是故意的,那么你也需要mHasStarted标志。