如何在Android中设置单选button

我有一个使用单选button的应用程序。 这个button的默认值是在main.xml文件中设置的,即:

android:id="@+id/rb_sat1E" android:checked="true" 

在Java文件中我有:

 final RadioButton radio1 = (RadioButton)findViewById(R.id.rb_sat1E); 

我还在主Java文件中创build了一个“重置”button,并可以使用以下代码来重置TextView信息。

 pos1_deg.setText("0.0"); 

但是,我如何重置单选button? 我会认为这是类似的东西

 radio1.setBoolean("TRUE"); 

但是这根本不起作用。

任何帮助不胜感激。 谢谢。

对于radioButton的使用

 radio1.setChecked(true); 

只有一个RadioButton是没有意义的。 如果你有更多的人,你需要通过取消其他人

 radio2.setChecked(false); ... 

如果您的设置只是打开/closures使用checkbox。

如果你想用代码来做,你可以调用RadioGroup的check成员:

 radioGroup.check(R.id.radioButtonId); 

这将检查您指定的button,并取消其他人。

或者你可以在XML文件中做到这一点:

RadioGroup中使用: android:checkedButton="id_button_to_check"

或者在RadioButton中android:checked="true"

只是为了澄清这一点:如果我们有一个RadioGroup与几个RadioButtons ,需要通过索引激活一个,暗示:

 radioGroup.check(R.id.radioButtonId) 

 radioGroup.getChildAt(index)` 

我们可以这样做:

 radioGroup.check(radioGroup.getChildAt(index).getId()); 

如果你已经完成了XML的devise,并希望显示在加载下面的页面时检查组中的checkbox之一解决scheme可以帮助你

  <RadioGroup android:layout_width="wrap_content" android:layout_height="wrap_content" android:layout_below="@+id/txtLastNameSignUp" android:layout_margin="20dp" android:orientation="horizontal" android:id="@+id/radioGroup"> <RadioButton android:layout_width="wrap_content" android:layout_height="wrap_content" android:checked="true" android:id="@+id/Male" android:text="Male"/> <RadioButton android:layout_width="wrap_content" android:layout_height="wrap_content" android:id="@+id/Female" android:text="Female"/> </RadioGroup> 

我有多个RadioButtons没有组和setChecked(true)作品,但setChecked(false)不起作用。 但是这个代码工作:

 RadioButton switcher = (RadioButton) view.findViewById(R.id.active); switcher.setOnClickListener(new RadioButton.OnClickListener(){ @Override public void onClick(View v) { if(((RadioButton)v).isSelected()){ ((RadioButton)v).setChecked(false); ((RadioButton)v).setSelected(false); } else { ((RadioButton)v).setChecked(true); ((RadioButton)v).setSelected(true); } } }); 
 btnDisplay.setOnClickListener(new OnClickListener() { @Override public void onClick(View v) { // get selected radio button from radioGroup int selectedId = radioSexGroup.getCheckedRadioButtonId(); // find the radiobutton by returned id radioSexButton = (RadioButton) findViewById(selectedId); Toast.makeText(MyAndroidAppActivity.this, radioSexButton.getText(), Toast.LENGTH_SHORT).show(); } });