Java 具有一个可选值的多个单选按钮
所以我有两个放射组,一个是性别组,一个是单位类型组。用户必须为两个放射组选择值,但第一个选定组的值会影响第二组的值 例如,如果用户是男性,并且使用公制单位类型,则会向他显示一个布局。如果他是男性,但使用帝国单位,另一个布局将显示给他 我的问题是,如何在RadioButton onClick方法中包含RadioButton onClick方法 对不起,我不知道如何更好地解释这一点 代码如下:Java 具有一个可选值的多个单选按钮,java,android,Java,Android,所以我有两个放射组,一个是性别组,一个是单位类型组。用户必须为两个放射组选择值,但第一个选定组的值会影响第二组的值 例如,如果用户是男性,并且使用公制单位类型,则会向他显示一个布局。如果他是男性,但使用帝国单位,另一个布局将显示给他 我的问题是,如何在RadioButton onClick方法中包含RadioButton onClick方法 对不起,我不知道如何更好地解释这一点 代码如下: public void dialogBodyFatMuskarciRadioButtonKliknut(V
public void dialogBodyFatMuskarciRadioButtonKliknut(View view){
boolean checked = ((RadioButton) view).isChecked();
switch (view.getId()){
case R.id.radioButtonDialogBodyFatSpolMuski:
if (checked)
public void dialogBodyFatRadioMetrickaJedinica(View view){
boolean checked = ((RadioButton) view).isChecked();
switch (view.getId()){
case R.id.radioButtonDialogBodyFatSpolMuski:
if (checked)
}
}
没有测试这个,但是你可以实现类似这样的逻辑 在您的舱单中:
<RadioGroup xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/gender_RadioGroup"
<RadioButton android:id="@+id/male"
android:text="@string/male"
android:onClick="onGenderRadioButtonClicked"/>
<RadioButton android:id="@+id/female"
android:text="@string/female"
android:onClick="onGenderRadioButtonClicked"/>
</RadioGroup>
<RadioGroup xmlns:android="http://schemas.android.com/apk/res/android"
android:id="@+id/unit_type_RadioGroup"
<RadioButton android:id="@+id/metric_unit_type"
android:text="@string/metric_unit_type"
android:onClick="onMetricRadioButtonClicked"/>
<RadioButton android:id="@+id/imperial_unit_type"
android:text="@string/imperial_unit_type"
android:onClick="onMetricRadioButtonClicked"/>
</RadioGroup>
protected void onCreate(Bundle savedInstanceState) {
view_gender = (RadioGroup) findViewById(R.id.gender_RadioGroup);
view_unit_type = (RadioGroup) findViewById(R.id.unit_type_RadioGroup);
}
public void onGenderRadioButtonClicked(View view) {
if(((RadioButton) view).isChecked())
chooseLayout(view, view_unit_type );
}
public void onMetricRadioButtonClicked(View view) {
if(((RadioButton) view).isChecked())
chooseLayout(view_gender, view);
}
public void chooseLayout(View View1, View View2){
if (View1.getId()==R.id.male && View2.getId()==R.id.metric_unit_type)
// show male metric type layout
else if (View1.getId()==R.id.male && View2.getId()==R.id.imperial_unit_type)
// show male imperial type layout
else if (View1.getId()==R.id.female && View2.getId()==R.id.metric_unit_type)
// show female metric type layout
else
// show female imperial type layout
}