AlertDialog中的RadioGroup:仅显示单个RadioButton

时间:2012-02-29 01:45:54

标签: android

我正在尝试在AlertDialog中设置一个RadioGroup。我正在使用以下构造。

new AlertDialog.Builder(this)
            .setTitle("Set icon for " + item_cursor.getString(1))
            .setView(radioGroupView)
            .setPositiveButton("Ok",
                    new DialogInterface.OnClickListener() {
                public void onClick(DialogInterface dialog,
                        int whichButton) {
                    RadioGroup radioGroup = (RadioGroup) findViewById(R.id.radiogroup);
                    int checkedRadioButton = 0;
                    try {
                        checkedRadioButton = radioGroup.getCheckedRadioButtonId();
                    } catch (Exception e) {
                        e.printStackTrace();
                    }
                    int i =0;
                    switch (checkedRadioButton) {
                    case R.id.a2s :
                    datasource.updateIcon(i,itemid);
                    break;
                    case R.id.android: i=1;
                    datasource.updateIcon(i,itemid);
                    break;
                    }
                }
            }).setNegativeButton("Cancel",
            new DialogInterface.OnClickListener() {
                public void onClick(DialogInterface dialog,
                        int whichButton) {
                    // Canceled.
                }
            }).show();

但alertDialog只显示一个Radiobutton。以下是XML seticon.xml:

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="fill_parent" android:layout_height="fill_parent"
    android:orientation="vertical">
    <RadioGroup android:layout_width="fill_parent"
        android:layout_height="wrap_content" android:orientation="horizontal"
        android:id="@+id/radiogroup">
        <RadioButton android:id="@+id/android"
            android:layout_width="fill_parent" android:layout_height="wrap_content"
            android:text="Android" />
        <RadioButton android:id="@+id/a2s" android:layout_width="fill_parent"
            android:layout_height="wrap_content" android:text="Argen2Stone ROM" />
    </RadioGroup>
</LinearLayout>

为什么会这样?

1 个答案:

答案 0 :(得分:2)

尝试更改高度以在无线电组和线性布局上包装内容。