嗨,我有一个带2个按钮的应用程序(播放和暂停),有一种方法可以将播放/暂停放在同一个按钮和其他按钮重启吗? 因为我尝试了一些代码,但我得到了错误(见评论)
这是我的代码:
import android.app.Activity;
import android.media.MediaPlayer;
import android.os.Bundle;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget.Button;
public class MainActivity extends Activity {
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
final MediaPlayer mp = MediaPlayer.create(this, R.raw.sound);
Button Play = (Button) findViewById(R.id.button1);
Play.setOnClickListener(new OnClickListener(){
@Override
public void onClick(View v) {
mp.start();
}});
final Button button2 = (Button) findViewById(R.id.button2);
button2.setOnClickListener(new View.OnClickListener() {
public void onClick(View v) {
mp.stop();
//mp.reset();
}
});
}
}
由于
答案 0 :(得分:1)
是的,您可以在同一个按钮中进行操作,如下所示。
button1.setOnClickListener(new View.OnClickListener() {
@Override
public void onClick(View arg0) {
if (mp.isPlaying()) {
if (mp != null) {
mp.reset();
mp.prepare();
mp.start();
mp.pause();
button1.setText("Play");
}
} else {
if (mp != null) {
mp.start();
button2.setText("Pause");
}
}
}
});
将mp声明为private MediaPlayer mp = new MediaPlayer(this, R.raw.sound);