Warning: file_get_contents(/data/phpspider/zhask/data//catemap/9/java/307.json): failed to open stream: No such file or directory in /data/phpspider/zhask/libs/function.php on line 167

Warning: Invalid argument supplied for foreach() in /data/phpspider/zhask/libs/tag.function.php on line 1116

Notice: Undefined index: in /data/phpspider/zhask/libs/function.php on line 180

Warning: array_chunk() expects parameter 1 to be array, null given in /data/phpspider/zhask/libs/function.php on line 181
Java 我对如何禁用更改以单击另一个单选按钮感兴趣?_Java_Android - Fatal编程技术网

Java 我对如何禁用更改以单击另一个单选按钮感兴趣?

Java 我对如何禁用更改以单击另一个单选按钮感兴趣?,java,android,Java,Android,如何在Android活动中单击某个单选按钮后禁用单选按钮组 这是我的XML代码 <?xml version="1.0" encoding="utf-8"?> <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" android:layout_width="match_parent" android:layout_height="match_parent"

如何在Android活动中单击某个单选按钮后禁用单选按钮组

这是我的XML代码

   <?xml version="1.0" encoding="utf-8"?>
<RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="match_parent"
    android:layout_height="match_parent"
    android:orientation="vertical" >

    <TextView
        android:id="@+id/tPitanje1"
        android:layout_width="match_parent"
        android:layout_height="wrap_content"
        android:text="1. Neposredno regulisanje saobracaja na putevima vrse:"
        android:textAppearance="?android:attr/textAppearanceLarge" />

    <RadioGroup
        android:id="@+id/radioGroup1"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignParentLeft="true"
        android:layout_below="@+id/tPitanje1"
        android:layout_marginLeft="20dp"
        android:layout_marginTop="62dp" >

        <RadioButton
            android:id="@+id/radio0"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"

            android:text="uniformisani komunalni policajci" />

        <RadioButton
            android:id="@+id/radio1"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="unoformisani policijski sluzbenici" />

        <RadioButton
            android:id="@+id/radio2"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:text="inspektori za drumski saobracaj" />
    </RadioGroup>

</RelativeLayout>

我对如何禁用或更改以单击另一个radiobutton感兴趣?

如果我理解正确,您希望在单击某个radiobutton后禁用RadioGroup。只需添加一个OnCheckedChangedListener,如果单击的RadioButton的id是正确的,则使用setEnabledfalse禁用该组。当然,除非代码中有其他逻辑来执行重新启用,否则无法重新启用RadioGroup

RadioGroup radioGroup = (RadioGroup)findViewById (R.id.radioGroup1);
radioGroup.setOnCheckedChangedListener (new OnCheckedChangedListener(){
public void onCheckedChanged(RadioGroup group, int checkedId) 
{
  if (checkedId == R.id.radio0)
    group.setEnabled(false);
}
});
编辑:似乎setEnabled不起作用,因此您应该尝试更改代码,以便在检查radio0:


如果我理解正确,您希望在单击某个单选按钮后禁用RadioGroup。只需添加一个OnCheckedChangedListener,如果单击的RadioButton的id是正确的,则使用setEnabledfalse禁用该组。当然,除非代码中有其他逻辑来执行重新启用,否则无法重新启用RadioGroup

RadioGroup radioGroup = (RadioGroup)findViewById (R.id.radioGroup1);
radioGroup.setOnCheckedChangedListener (new OnCheckedChangedListener(){
public void onCheckedChanged(RadioGroup group, int checkedId) 
{
  if (checkedId == R.id.radio0)
    group.setEnabled(false);
}
});
编辑:似乎setEnabled不起作用,因此您应该尝试更改代码,以便在检查radio0:


你的最后一句话让我有点困惑,但听起来你想在用户检查按钮后禁用一个组。如果是,您确定要这样做吗?如果他们不小心选错了怎么办?我对你的最后一句话有点困惑,但听起来好像你想在用户检查按钮后禁用一个组。如果是,您确定要这样做吗?如果他们不小心选错了怎么办?对不起,当我查看时,工作是合乎逻辑的,但当我尝试在代码中使用此选项时,显示他们仍然可以更改RadioGroup中的值。@Muskolo,那么你的意思是RadioGroup没有被禁用?是的,RadioGroup没有被禁用,它仍然可以更改RadioButton。我也尝试了isClickable,但没有效果。@Muskolo似乎setEnabled不起作用,你应该像回答一样重复一遍孩子们的回答对不起,当我查看时,工作是合乎逻辑的,但当我尝试在代码中使用此选项时,显示他们仍然可以更改RadioGroup中的值。@Muskolo,那么你的意思是RadioGroup没有被禁用?是的,RadioGroup没有被禁用,它仍然可以更改RadioButton。我也尝试了isClickable,但没有效果。@Muskolo似乎setEnabled不起作用,你应该把孩子们的答案循环一遍。
if (checkedId == R.id.radio0){
   for(int i = 0; i < group.getChildCount(); i++){
            ((RadioButton)rg1.getChildAt(i)).setEnabled(false);
        }
}