2012-04-04 6 views
1

Ich habe drei Radiobuttons in einer Radiogruppe. Wie kann ich Java sagen, je nachdem welche Schaltfläche ausgewählt ist, etwas anderes zu tun? Ich habe die Gruppe und alle Tasten erklärt:Wie prüfe ich, welche Radiogruppen-Taste ausgewählt ist?

final RadioGroup size = (RadioGroup)findViewById(R.id.RGSize); 
     final RadioButton small = (RadioButton)findViewById(R.id.RBS); 
     final RadioButton medium = (RadioButton)findViewById(R.id.RBM); 
     final RadioButton large = (RadioButton)findViewById(R.id.RBL); 

Ich weiß, dass ich so etwas wie dies sagen würde:

if (size.getCheckedRadioButtonId().equals(small){ 

} else{ 

} 

Aber ist gleich nicht die richtige Syntax ... Wie kann ich fragen, Java, die Schaltfläche ist ausgewählt?

+0

Bitte haben Sie einen Blick auf http://www.thetekblog.com/2010/07/android-radiobutton-in-radiogroup: Sie sollten die ID small und getCheckedRadioButtonId() (die R.id.RBS ist) vergleichen -Beispiel/ –

Antwort

1

Versuchen:

if (size.getCheckedRadioButtonId() == small.getId()){ 
.... 
} 
else if(size.getCheckedRadioButtonId() == medium.getId()){ 
.... 
} 
1

Da getCheckedRadioButtonId() kehrt eine ganze Zahl, versuchen Sie, eine ganze Zahl mit RadioButton- Objekt zu vergleichen.

switch(size.getCheckedRadioButtonId()){ 
    case R.id.RBS: //your code goes here.. 
        break; 
    case R.id.RBM: //your code goes here.. 
        break; 
    case R.id.RBL: //your code goes here.. 
        break; 
} 
1
int selected = size.getCheckedRadioButtonId(); 

switch(selected){ 
case R.id.RBS: 
    break; 
case R.id.RBM: 
    break; 
case R.id.RBL: 
    break; 

} 
Verwandte Themen