Android按钮点击播放音乐,再次点击停止音乐 [英] Android button click to play music, click again to stop music
问题描述
我有一个按钮,当我点击它播放音乐,如何做,当我第二次点击,停止音乐?
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
错误0) {b> android / media / MediaPlayer.htmlrel =nofollow> http://developer.android.com/reference/android/media/MediaPlayer.html ,我想你可以这样做:
按钮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 mp2.isPlaying()== true)
//暂停音乐播放器
mp2.pause();
//如果没有播放
else
//恢复音乐播放器
mp2.start();
}
});
您实际上可以写
if(mp2.isPlaying())
>
if(mp2.isPlaying()== true)
这只是为了了解发生了什么。
I have a button, when I click it plays music, how to do it, when I click second time, to stop the music?
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();
}
});
Ok, this one works:
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();
}
;
}});
The one with Pause above it works, but If I want to stop the music, it does not work. Following not working:
@Override
public void onClick(View v) {
if (mp1.isPlaying()) {
mp2.stop();
}
else {
mp2.start();
}
;
}});
I get error: start called in state 0 error (-38, 0)
According to http://developer.android.com/reference/android/media/MediaPlayer.html, I suppose you could do something like this:
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();
}
});
You can actually write just
if(mp2.isPlaying())
instead of
if(mp2.isPlaying() == true)
It's just for the sake of understanding what is going on.
这篇关于Android按钮点击播放音乐,再次点击停止音乐的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!