ラジオボタンを使用するアプリがあります。このボタンのデフォルトは、main.xmlファイルで設定されます。つまり:
Android:id="@+id/rb_sat1E"
Android:checked="true"
Javaファイルにある:
final RadioButton radio1 = (RadioButton)findViewById(R.id.rb_sat1E);
メインのJavaファイルに 'Reset'ボタンを作成しました。次のコードを使用してTextView情報をリセットできます。
pos1_deg.setText("0.0");
しかし、ラジオボタンをリセットするにはどうすればよいですか?私はそれが次のようなものだと思っていただろう
radio1.setBoolean("TRUE");
しかし、それはまったく機能しません。
どんな助けも大歓迎です。ありがとう。
RadioButton用
radio1.setChecked(true);
RadioButtonを1つだけ持つことは意味がありません。それらがもっとある場合は、他の人のチェックを外す必要があります
radio2.setChecked(false); ...
設定がオン/オフの場合は、CheckBoxを使用します。
コードで実行する場合は、RadioGroupのチェックメンバーを呼び出すことができます。
radioGroup.check(R.id.radioButtonId);
これにより、指定したボタンがオンになり、他のボタンはオフになります。
または、XMLファイルでそれを行うことができます。
RadioGroupを使用して:Android:checkedButton="id_button_to_check"
またはRadioButton:Android:checked="true"
これを明確にするために、複数のRadioGroup
を持つRadioButtons
があり、インデックスで1つをアクティブにする必要がある場合、次のことを意味します。
radioGroup.check(R.id.radioButtonId)
そして
radioGroup.getChildAt(index)`
できること:
radioGroup.check(radioGroup.getChildAt(index).getId());
xMLでデザインを行い、グループ内のチェックボックスの1つを表示したい場合は、以下のページをロードするときに解決できます。
<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>
ラジオボタンが同じradioGroupに属している場合、何度も
radioButton.setChecked(true)
ラジオボタンを適切に選択しません。この問題を解決するには、radioGroupを使用してみてください。
radioGroup.check(R.id.radioButtonId)
グループのない複数のRadioButtonがあり、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);
}
}
});