2011-06-09 21 views
15

Bir düğmenin metnini ve eylemini nasıl değiştireceğimi bulmakta zorlanıyorum. Yapmak istediğim, "oynatma" metniyle bir düğmenin bulunması ve tıklandığında bir şarkı çalacağı ve metni "duraklat" olarak değiştireceği. daha sonra tekrar tıkladığınızda, şarkıyı duraklatır ve metni "oynat" olarak değiştirir. Ben mediaplayer (kodlama) kullanmak için ve sadece düğmeye kodlamak için nasıl bilmiyorum bilenDüğme metni ve eylemi değiştir - android geliştirme

bu şekilde:

şimdiye kadar ben:

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"); 

cevap

23

SetTag'i kullanabilirsiniz.

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 
     } 
    } 
}); 

Hakkında setTag

+0

Çok teşekkürler gopai! If bir ifade istiyorum ama bir setTag gerektirecek bir his vardı. Tekrar teşekkürler! – Splitusa

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; 
} 

ben şeyi Fikrin var. Yine de MediaPlayer durumlarından emin değilim.

+0

Kesinlikle fikrim var gibi Yani, kodunuz bakacağız. yardım ettiğin için teşekkür ederim! – Splitusa

İlgili konular