buttonMusic = findViewById(R.id.buttonMus);
musicSound = MediaPlayer.create(this, R.raw.music);
buttonClick();
}
private Button buttonMusic;
private MediaPlayer musicSound;
public void buttonClick() {
buttonMusic.setOnClickListener(
new View.OnClickListener() {
@Override
public void onClick(View v) {
soundPlay(musicSound);
}
}
);
}
public void soundPlay(MediaPlayer sound) {
if (sound.isPlaying()) {
sound.stop();
}else {
sound.start();
sound.setLooping(true);
} }
你好。该代码启动音乐,可以停止它,但在按下播放按钮后,在暂停歌曲后,它不会再次播放。
您不是在暂停歌曲,而是在使用stop()
。使用sound.pause()
暂停:(
在stop()
MediaPlayer
之后,您必须再次准备,请使用prepare()
或prepareAsync()
。MediaPlayer.create(
在一开始就为您提供了这一点,如果您要使用其构造函数创建MediaPlayer
,那么在onClick 中调用start()
之前,您也需要prepare()
/preapreAsync()
MediaPlayer
的检查状态图