0

请看下面的代码

<?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="wrap_content"
    android:background="#ffffff" >

    <RadioGroup
        android:id="@+id/save_selection_group"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:orientation="horizontal"
        android:layout_alignBaseline="@+id/save_txt"
        android:layout_toRightOf="@+id/save_txt" >
    </RadioGroup>

    <RadioButton
        android:id="@+id/radio0"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignBaseline="@+id/save_txt"
        android:layout_alignBottom="@+id/save_txt"
        android:layout_toRightOf="@+id/save_selection_group"
        android:checked="true"
        android:text="SD" />

    <RadioButton
        android:id="@+id/radio1"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignBaseline="@+id/radio0"
        android:layout_alignBottom="@+id/radio0"
        android:layout_toRightOf="@+id/radio0"
        android:text="Phone" />

    <TextView
        android:id="@+id/save_txt"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignParentLeft="true"
        android:layout_alignParentTop="true"
        android:layout_marginTop="22dp"
        android:paddingTop="5dp"
        android:text="@string/save_to" />

    <TextView
        android:id="@+id/save_name_txt"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_below="@+id/save_txt"
        android:layout_marginTop="50dp"
        android:text="@string/save_name" />

    <EditText
        android:id="@+id/save_name_edt"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_below="@+id/save_txt"
        android:layout_toRightOf="@+id/save_name_txt"
        android:layout_alignBaseline="@+id/save_name_txt"
        android:layout_marginLeft="15dp"
        android:paddingBottom="10dp"
        android:ems="8" >

        <requestFocus />
    </EditText>

    <Button
        android:id="@+id/save_voice_note_button"
        style="?android:attr/buttonStyleSmall"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_below="@+id/save_txt"
        android:layout_toRightOf="@+id/save_name_edt"
        android:layout_alignBaseline="@+id/save_name_edt"
        android:layout_marginLeft="5dp"
        android:text="@string/save" />

</RelativeLayout>

Java 代码

private class SaveEvent implements OnClickListener
    {

        @Override
        public void onClick(View arg0) {
            // TODO Auto-generated method stub
            final Dialog dialog = new Dialog(VoiceNotes.this);
            dialog.setContentView(R.layout.save_dialog);
            dialog.setTitle("Save your file");
            dialog.show();

            final Button saveButton = (Button)dialog.findViewById(R.id.save_voice_note_button);
            final RadioGroup saveLocationRadioGroup = (RadioGroup)dialog.findViewById(R.id.save_selection_group);

            final String spokenText = voiceEdt.getText().toString();


            //Writing the Event handler for the Save button
            saveButton.setOnClickListener(new OnClickListener() {

                @Override
                public void onClick(View v) {
                    // TODO Auto-generated method stub

                    int selectedLocationId = saveLocationRadioGroup.getCheckedRadioButtonId();
                    RadioButton saveLocationRadioButton = (RadioButton)dialog.findViewById(selectedLocationId);

                    if(saveLocationRadioButton.getText().equals("SD"))
                    {
                        }

                }
            });


        }

}

在这里,我可以选择两个单选按钮!但你知道,这就是他们的目的。一个应该选择!这是为什么?

4

4 回答 4

2

您需要将单选按钮添加到RadioGroup

举个例子:

<RadioGroup xmlns:android="http://schemas.android.com/apk/res/android"
    android:layout_width="fill_parent"
    android:layout_height="wrap_content"
    android:orientation="vertical">
    <RadioButton android:id="@+id/radio_pirates"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="@string/pirates"
        android:onClick="onRadioButtonClicked"/>
    <RadioButton android:id="@+id/radio_ninjas"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:text="@string/ninjas"
        android:onClick="onRadioButtonClicked"/>
</RadioGroup>
于 2013-11-14T09:02:03.887 回答
0

放置</RadioGroup>第二个单选按钮。如下所示,

<?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="wrap_content"
    android:background="#ffffff" >

    <RadioGroup
        android:id="@+id/save_selection_group"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:orientation="horizontal"
        android:layout_alignBaseline="@+id/save_txt"
        android:layout_toRightOf="@+id/save_txt" >


    <RadioButton
        android:id="@+id/radio0"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignBaseline="@+id/save_txt"
        android:layout_alignBottom="@+id/save_txt"
        android:layout_toRightOf="@+id/save_selection_group"
        android:checked="true"
        android:text="SD" />

    <RadioButton
        android:id="@+id/radio1"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignBaseline="@+id/radio0"
        android:layout_alignBottom="@+id/radio0"
        android:layout_toRightOf="@+id/radio0"
        android:text="Phone" />
    </RadioGroup>

    <TextView
        android:id="@+id/save_txt"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignParentLeft="true"
        android:layout_alignParentTop="true"
        android:layout_marginTop="22dp"
        android:paddingTop="5dp"
        android:text="@string/save_to" />

    <TextView
        android:id="@+id/save_name_txt"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_below="@+id/save_txt"
        android:layout_marginTop="50dp"
        android:text="@string/save_name" />

    <EditText
        android:id="@+id/save_name_edt"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_below="@+id/save_txt"
        android:layout_toRightOf="@+id/save_name_txt"
        android:layout_alignBaseline="@+id/save_name_txt"
        android:layout_marginLeft="15dp"
        android:paddingBottom="10dp"
        android:ems="8" >

        <requestFocus />
    </EditText>

    <Button
        android:id="@+id/save_voice_note_button"
        style="?android:attr/buttonStyleSmall"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_below="@+id/save_txt"
        android:layout_toRightOf="@+id/save_name_edt"
        android:layout_alignBaseline="@+id/save_name_edt"
        android:layout_marginLeft="5dp"
        android:text="@string/save" />

</RelativeLayout>
于 2013-11-14T09:02:27.170 回答
0

更改此代码:

<RadioGroup
        android:id="@+id/save_selection_group"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:orientation="horizontal"
        android:layout_alignBaseline="@+id/save_txt"
        android:layout_toRightOf="@+id/save_txt" >


    <RadioButton
        android:id="@+id/radio0"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignBaseline="@+id/save_txt"
        android:layout_alignBottom="@+id/save_txt"
        android:layout_toRightOf="@+id/save_selection_group"
        android:checked="true"
        android:text="SD" />

    <RadioButton
        android:id="@+id/radio1"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignBaseline="@+id/radio0"
        android:layout_alignBottom="@+id/radio0"
        android:layout_toRightOf="@+id/radio0"
        android:text="Phone" />
 </RadioGroup>
于 2013-11-14T09:02:32.503 回答
0

像这样更改您的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="wrap_content"
    android:background="#ffffff" >

    <RadioGroup
        android:id="@+id/save_selection_group"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:orientation="horizontal"
        android:layout_alignBaseline="@+id/save_txt"
        android:layout_toRightOf="@+id/save_txt" >


    <RadioButton
        android:id="@+id/radio0"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignBaseline="@+id/save_txt"
        android:layout_alignBottom="@+id/save_txt"
        android:layout_toRightOf="@+id/save_selection_group"
        android:checked="true"
        android:text="SD" />

    <RadioButton
        android:id="@+id/radio1"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignBaseline="@+id/radio0"
        android:layout_alignBottom="@+id/radio0"
        android:layout_toRightOf="@+id/radio0"
        android:text="Phone" />
    </RadioGroup>

    <TextView
        android:id="@+id/save_txt"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_alignParentLeft="true"
        android:layout_alignParentTop="true"
        android:layout_marginTop="22dp"
        android:paddingTop="5dp"
        android:text="savegsdg" />

    <TextView
        android:id="@+id/save_name_txt"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_below="@+id/save_txt"
        android:layout_marginTop="50dp"
        android:text="fdgg" />

    <EditText
        android:id="@+id/save_name_edt"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_below="@+id/save_txt"
        android:layout_toRightOf="@+id/save_name_txt"
        android:layout_alignBaseline="@+id/save_name_txt"
        android:layout_marginLeft="15dp"
        android:paddingBottom="10dp"
        android:ems="8" >

        <requestFocus />
    </EditText>

    <Button
        android:id="@+id/save_voice_note_button"
        style="?android:attr/buttonStyleSmall"
        android:layout_width="wrap_content"
        android:layout_height="wrap_content"
        android:layout_below="@+id/save_txt"
        android:layout_toRightOf="@+id/save_name_edt"
        android:layout_alignBaseline="@+id/save_name_edt"
        android:layout_marginLeft="5dp"
        android:text="fdgdfg" />

</RelativeLayout>
于 2013-11-14T09:03:41.417 回答