我有一个按钮,当我点击它播放音乐,怎么做,当我点击第二次,停止音乐?
Button two = (Button)this.findViewById(R.id.button2);
final MediaPlayer mp2 = MediaPlayer.create(this, R.raw.two);
two.setOnClickListener(new OnClickListener(){
public void onClick(View v) {
mp2.start();
}
});
好的,这个有效:
Button one = (Button)this.findViewById(R.id.button1);
final MediaPlayer mp1 = MediaPlayer.create(this, R.raw.n);
one.setOnClickListener(new OnClickListener(){
@Override
public void onClick(View v) {
if (mp1.isPlaying()) {
mp2.pause();
}
else {
mp2.start();
}
;
}});
上面有Pause的那个可以工作,但如果我想停止音乐,它就不起作用了.
以下不工作:
@Override
public void onClick(View v) {
if (mp1.isPlaying()) {
mp2.stop();
}
else {
mp2.start();
}
;
}});
我收到错误:在状态0开始调用
错误(-38,0)
解决方法:
根据http://developer.android.com/reference/android/media/MediaPlayer.html,我想你可以这样做:
Button two = (Button)this.findViewById(R.id.button2);
final MediaPlayer mp2 = MediaPlayer.create(this, R.raw.two);
two.setOnClickListener(new OnClickListener(){
public void onClick(View v) {
// If the music is playing
if(mp2.isPlaying() == true)
// Pause the music player
mp2.pause();
// If it's not playing
else
// Resume the music player
mp2.start();
}
});
你真的可以写
if(mp2.isPlaying())
代替
if(mp2.isPlaying() == true)
这只是为了理解正在发生的事情.