更改按钮文本和操作 - android开发

时间:2011-06-09 17:57:49

标签: android button text

我无法弄清楚如何更改按钮的文本和操作。我想要做的是有一个文本“play”的按钮,当点击它时,它将播放一首歌并将文本更改为“暂停”。然后当你再次点击它时,它会暂停歌曲并将文字改为“播放”。

我知道如何使用媒体播放器(编码),只是不知道如何编码按钮:

到目前为止,我有:

final Button testButton = (Button) findViewById(R.id.button1);
testButton.setText("Play");
testButton.setOnClickListener( new View.OnClickListener() {

@Override
public void onClick (View v) {
mPlayer.start();
testButton.setText("Pause");

2 个答案:

答案 0 :(得分:26)

您可以使用setTag。所以,你的代码看起来像,

final Button testButton = (Button) findViewById(R.id.button1);
testButton.setTag(1);
testButton.setText("Play");
testButton.setOnClickListener( new View.OnClickListener() {
    @Override
    public void onClick (View v) {
        final int status =(Integer) v.getTag();
        if(status == 1) {
            mPlayer.start();
            testButton.setText("Pause");
            v.setTag(0); //pause
        } else {
            testButton.setText("Play");
            v.setTag(1); //pause
        }
    }
});

关于setTag

答案 1 :(得分:3)

private bool isPlaying=false;
final Button testButton = (Button) findViewById(R.id.button1);
testButton.setText("Play");
testButton.setOnClickListener( new View.OnClickListener() {

@Override
public void onClick (View v) {
if(!isPlaying){
  mPlayer.start();
  testButton.setText("Pause");
  isPlaying=true;
}else{
  mPlayer.stop();
  testButton.setText("Play");
  isPlaying=false;
}

我知道你有这个主意。虽然,我不确定MediaPlayer的状态。