RadioButton不会从“true”切换到“false”

时间:2013-09-04 12:39:55

标签: android radio-button manifest

我的RadioButton出现问题,我在activity_main.xml中声明了这个问题:

<RadioButton
    android:id="@+id/RadioButton01"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_alignBaseline="@+id/RadioButton00"
    android:layout_alignBottom="@+id/RadioButton00"        
    android:layout_marginLeft="9dp"
    android:layout_toRightOf="@+id/RadioButton00" />

<RadioButton
    android:id="@+id/RadioButton02"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:layout_alignBaseline="@+id/RadioButton01"
    android:layout_alignBottom="@+id/RadioButton01"
    android:layout_marginLeft="7dp"
    android:layout_toRightOf="@+id/RadioButton01" />

这些RadioButton中的一些以编程方式设置为“true”。但是如果用户点击它,用户应该有权使其“假”。目前它没有。如果我点击它,它仍然是真的,不会切换为假。

public class MainActivity extends Activity {    

private RadioButton RB1, RB2;   

int[][] RBTrue = new int[3][16];    

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.activity_main);     



    RB1 = (RadioButton) findViewById(R.id.RadioButton00);

    RB2 = (RadioButton) findViewById(R.id.RadioButton01);

    }

    public void setRadioButtons()
    {
        steine sander = new steine();
        sander.setSteine();
        RBTrue = sander.getSteine();



        if(RBTrue[0][0] == 1)
            RB1.setChecked(true);       
        if(RBTrue[0][1] == 1)
            RB2.setChecked(true);
     }

所以这很容易。我会给一个数组并检查它是否为1。如果是RadioButton切换为true。但有时用户需要将其切换回false。目前这是不可能的。

2 个答案:

答案 0 :(得分:1)

RadioButtondetails here)内声明RadioGroup

答案 1 :(得分:0)

                <RadioGroup
                android:id="@+id/radio_group"
                android:layout_width="wrap_content"
                android:layout_height="wrap_content"
                android:orientation="horizontal" >

                <RadioButton
                    android:id="@+id/RadioButton01"
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"
                    android:text="...."
                    android:textSize="15sp" />

                <RadioButton
                    android:id="@+id/RadioButton02"
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content" 
                    android:text="....."
                    android:textSize="15sp" />
            </RadioGroup>

然后在里面活动,,,

    RadioGroup rgGroup=(RadioGroup)findViewById(R.id.radio_group);  



           int selectedId = rgGroup.getCheckedRadioButtonId();
            RadioButton rBtn1 =(RadioButton)findViewById(selectedId);
            Toast.makeText(MyAndroidAppActivity.this,
            rBtn1.getText(), Toast.LENGTH_SHORT).show();