当我再次点击它时,我想要播放它。这是我的代码,但它没有工作,因为当我再次点击按钮再次开始重复相同的音频,而不是暂停是。请帮帮我
Button button_attention = (Button)findViewById(R.id.button_one);
button_attention.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
player=MediaPlayer.create(MainActivity.this, R.raw.alarm_effect);
{
if (player.isPlaying()){
player.stop();}
else {
player.start();
}
}
答案 0 :(得分:2)
每次调用时,您都会在点击处理程序内重新定义媒体播放器,因此它不起作用。您需要将定义移动到点击处理程序之外,然后从内部引用它。
//Move it to here
player=MediaPlayer.create(MainActivity.this, R.raw.alarm_effect);
Button button_attention = (Button)findViewById(R.id.button_one);
button_attention.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View view) {
if (player.isPlaying()){
//This maybe should be pause.
player.stop();
}
else {
player.start();
}
修改强> 关于如何将其用于多个曲目的评论,您应该执行以下操作。
实施一种方法,例如:
private void changeTrack(int resourceId){
player = MediaPlayer.create(MainActivity.this, resourceId);
}
如果您希望使用以下方法更改曲目,只需调用此方法:
changeTrack(R.raw.MEDIA_NAME);