Изменить текст и действие кнопки - разработка Android-приложений
Мне сложно понять, как изменить текст и действие кнопки. То, что я хочу сделать, это кнопка с текстом "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");
Ответы
Ответ 1
Вы можете использовать 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
Ответ 2
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.