我是编程的新手,并尝试创建一个小型的Android应用程序。 我想将变量“stufe”设置为1或2,具体取决于按下的单选按钮。 但它始终保持为0。 这是我的代码...我希望你能帮助我:
public class MainActivity extends ActionBarActivity {
//Radio Button
private int stufe;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
TextView textView2 = (TextView) findViewById(R.id.textView2);
textView2.setText(String.valueOf(stufe));
}
public void onClick(View view){
switch (view.getId()){
case R.id.button1:
RadioButton onebutton = (RadioButton) findViewById(R.id.radio_one);
RadioButton twobutton = (RadioButton) findViewById(R.id.radio_two);
if (onebutton.isChecked()){
stufe = 1;
onebutton.setChecked(true);
twobutton.setChecked(false);
} else {
stufe = 2;
onebutton.setChecked(false);
twobutton.setChecked(true);
}
break;
}
}
答案 0 :(得分:0)
更改stufe
值后,您忘记了设置文本。
试试这个:
yourRadioGroup.setOnCheckedChangeListener(new RadioGroup.OnCheckedChangeListener() {
@Override
public void onCheckedChanged(RadioGroup radioGroup, int checkedId) {
switch (checkedId){
case R.id.radio_one:
stufe = 1;
break;
case R.id.radio_two:
stufe = 2;
break;
default:
break;
}
textView2.setText(String.valueOf(stufe));
}
});