区分相同XML布局中的两个无线电组

时间:2014-08-24 05:57:25

标签: java android xml

我在同一个xml布局中有两个无线电组。我在MainActivity.java文件中使用oncheckedChanged侦听器。我想使用它的监听器来区分两个Radio组。如何在Listener中使用RadioGroup的参数。

@Override
public void onCheckedChanged(RadioGroup group, int checkedId) {

    switch (checkedId) {

    case R.id.rexcellent:

        Toast.makeText(getApplicationContext(), "execellnt",
                Toast.LENGTH_SHORT).show();

        break;
    case R.id.rverygood:
        Toast.makeText(getApplicationContext(), "very good",
                Toast.LENGTH_SHORT).show();

        break;
    case R.id.rgood:
        Toast.makeText(getApplicationContext(), "good", Toast.LENGTH_SHORT)
                .show();

        break;
    case R.id.raverage:
        Toast.makeText(getApplicationContext(), "average",
                Toast.LENGTH_SHORT).show();

        break;
    case R.id.rmale:
        Toast.makeText(getApplicationContext(), "Male",
                Toast.LENGTH_SHORT).show();

        break;
    case R.id.rfemale:
        Toast.makeText(getApplicationContext(), "female",
                Toast.LENGTH_SHORT).show();

        break;

    }

} 

这是我的Xml代码:     

    <TextView
    android:id="@+id/textView1"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content"
    android:text="Rate Smartherd Tutorials ?"
    android:textAppearance="?android:attr/textAppearanceLarge" />

    <RadioGroup
    android:id="@+id/rgroup"
    android:layout_width="wrap_content"
    android:layout_height="wrap_content" >

    <RadioButton
        android:id="@+id/rexcellent"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:checked="true"
        android:text="Excellent" />

    <RadioButton
        android:id="@+id/rverygood"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="Very Good" />

    <RadioButton
        android:id="@+id/rgood"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="Good" />

    <RadioButton
        android:id="@+id/raverage"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="Average" />
</RadioGroup>

<TextView
    android1:id="@+id/textView2"
    android1:layout_width="wrap_content"
    android1:layout_height="wrap_content"
    android1:text="How is shreks ?" />

<RadioGroup
    android1:id="@+id/rg2"
    android1:layout_width="wrap_content"
    android1:layout_height="wrap_content" >

    <RadioButton
        android1:id="@+id/rmale"
        android1:layout_width="wrap_content"
        android1:layout_height="wrap_content"
        android1:checked="true"
        android1:text="MALE" />

    <RadioButton
        android1:id="@+id/rfemale"
        android1:layout_width="wrap_content"
        android1:layout_height="wrap_content"
        android1:text="Female" />

    </RadioGroup>

</LinearLayout>

我只想使用switch case语句。并想知道在听众中使用“RadioGroup组”的用法。这有什么作用?

1 个答案:

答案 0 :(得分:0)

RadioGroup group是发起click事件的RadioGroup。但是,在您的特定情况下,我认为拥有两个独立的事件处理程序会更加清晰,因为两个不同的无线电组之间绝对没有代码重用。