2013-09-30 31 views
0

我有一个单选按钮组,它有四个单选按钮。我试图创建一个场景,当用户单击单选按钮时,该单选按钮的值将显示给他。但我的代码不起作用。显示来自收音机组的单选按钮的选择值

这是我的单选按钮组呼叫的onclick听者

buttongroup.setOnClickListener(buttongroupListener); 

的线的上方被放置在OnCreate视图。

private OnClickListener buttongroupListener = new OnClickListener(){ 

@Override 
public void onClick(View view) { 
    // TODO Auto-generated method stub 
    String selectedValue = ""; 
    // Is the button now checked? 

    if(view.getId() == R.id.buttoncontainer){ 
    boolean checked = ((RadioButton) view).isChecked(); 
    int selectedRadioID = buttongroup.getCheckedRadioButtonId(); 

    if(checked){ 

     switch(selectedRadioID){ 

      case R.id.radioButton1: 
       selectedValue = "A"; 
       break; 
      case R.id.radioButton2: 
       selectedValue = "B"; 
       break; 
      case R.id.radioButton3: 
       selectedValue = "C"; 
       break; 
      case R.id.radioButton4: 
       selectedValue = "D"; 
       break; 
     } 
    } 
} 



    Toast.makeText(context, selectedValue,Toast.LENGTH_SHORT).show(); 
} 

};

回答

1

更好的选择,我可以建议是使用如下RadioGroup事件:

RadioGroup radioGroup = (RadioGroup) findViewById(R.id.yourRadioGroup);   
radioGroup.setOnCheckedChangeListener(new OnCheckedChangeListener() 
{ 
    public void onCheckedChanged(RadioGroup group, int checkedId) { 
     switch(checkedId){ 

     case R.id.radioButton1: 
      selectedValue = "A"; 
      break; 
     case R.id.radioButton2: 
      selectedValue = "B"; 
      break; 
     case R.id.radioButton3: 
      selectedValue = "C"; 
      break; 
     case R.id.radioButton4: 
      selectedValue = "D"; 
      break; 
    } 
    }Toast.makeText(context, selectedValue,Toast.LENGTH_SHORT).show(); 

}); 
+0

谢谢我想它。 BRO – user2754532

相关问题