Heim  >  Artikel  >  Backend-Entwicklung  >  Android-UI-Steuerelementserie: RadioButton (Optionsschaltfläche)

Android-UI-Steuerelementserie: RadioButton (Optionsschaltfläche)

黄舟
黄舟Original
2017-01-19 09:13:372068Durchsuche

RadioButton wird auch häufig auf der Android-Plattform verwendet. Bei der Auswahl von Elementen werden beispielsweise Radiobuttons aus zwei Teilen verwendet, nämlich RadioButton und RadioGroup.

RadioButtons Optionsfeld;

RadioGroup ist ein Optionsfeld-Kombinationsfeld, das zum Einrahmen von RadioButton verwendet wird;

Wenn keine RadioGroup vorhanden ist, können alle RadioButtons ausgewählt werden ;

Wenn mehrere RadioButtons in einer RadioGroup enthalten sind, kann nur ein RadioButton ausgewählt werden;

Hinweis: Die Ereignisüberwachung des Radiobuttons verwendet setOnCheckedChangeListener, um den Radiobutton zu überwachen

Beispiel:

Eine Multiple-Choice-Frage, wählen Sie aus, welche Stadt die meisten Schönheiten hat. Dies dient natürlich zum Testen

RadioTest.java

package org.loulijun.radio;

import android.app.Activity;
import android.os.Bundle;
import android.view.Gravity;
import android.widget.RadioButton;
import android.widget.RadioGroup;
import android.widget.TextView;
import android.widget.Toast;

public class RadioTest extends Activity {
    /** Called when the activity is first created. */
        TextView textview;
        RadioGroup radiogroup;
        RadioButton radio1,radio2,radio3,radio4;
    @Override
    public void onCreate(Bundle savedInstanceState) {
        super.onCreate(savedInstanceState);
        setContentView(R.layout.main);
        textview=(TextView)findViewById(R.id.textview1);
        radiogroup=(RadioGroup)findViewById(R.id.radiogroup1);
        radio1=(RadioButton)findViewById(R.id.radiobutton1);
        radio2=(RadioButton)findViewById(R.id.radiobutton2);
        radio3=(RadioButton)findViewById(R.id.radiobutton3);
        radio4=(RadioButton)findViewById(R.id.radiobutton4);

        radiogroup.setOnCheckedChangeListener(new RadioGroup.OnCheckedChangeListener() {

                        @Override
                        public void onCheckedChanged(RadioGroup group, int checkedId) {
                                // TODO Auto-generated method stub
                                if(checkedId==radio2.getId())
                                {
                                        DisplayToast("正确答案:"+radio2.getText()+",恭喜你,回答正确!");
                                }else
                                {
                                        DisplayToast("请注意,回答错误!");
                                }
                        }
                });
    }
    public void DisplayToast(String str)
    {
            Toast toast=Toast.makeText(this, str, Toast.LENGTH_LONG);
            toast.setGravity(Gravity.TOP,0,220);
            toast.show();
    }
}

strings.xml-Datei

<?xml version="1.0" encoding="utf-8"?>  
<resources>  
    <string name="hello">哪个城市美女多?</string>  
    <string name="app_name">单选按钮测试</string>  
    <string name="radiobutton1">杭州</string>  
    <string name="radiobutton2">成都</string>  
    <string name="radiobutton3">重庆</string>  
    <string name="radiobutton4">苏州</string>  
</resources>

main.xml-Datei: Beachten Sie, dass hier 4 RadioButtons in RadioGroup enthalten sind

<?xml version="1.0" encoding="utf-8"?>
<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"
    android:orientation="vertical"
    android:layout_width="fill_parent"
    android:layout_height="fill_parent"
    >
<TextView
    android:layout_width="fill_parent"
    android:layout_height="wrap_content"
    android:text="@string/hello"
    android:id="@+id/textview1"
    />
    <RadioGroup
            android:id="@+id/radiogroup1"
            android:layout_width="wrap_content"
            android:layout_height="wrap_content"
            android:orientation="vertical"
            android:layout_x="3px"
    >
            <RadioButton
                    android:id="@+id/radiobutton1"
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"
                    android:text="@string/radiobutton1"
            />
            <RadioButton
                    android:id="@+id/radiobutton2"
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"
                    android:text="@string/radiobutton2"
            />
            <RadioButton
                    android:id="@+id/radiobutton3"
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"
                    android:text="@string/radiobutton3"
            />
            <RadioButton
                    android:id="@+id/radiobutton4"
                    android:layout_width="wrap_content"
                    android:layout_height="wrap_content"
                    android:text="@string/radiobutton4"
            />
    </RadioGroup>
</LinearLayout>

Die laufenden Ergebnisse sind wie folgt:

Android-UI-Steuerelementserie: RadioButton (Optionsschaltfläche)

Wenn wir Hangzhou wählen, wird der falsche Toast angezeigt

Android-UI-Steuerelementserie: RadioButton (Optionsschaltfläche)

Nach erneuter Auswahl von Chengdu wird die richtige Antwort angezeigt

Android-UI-Steuerelementserie: RadioButton (Optionsschaltfläche)


Hier können Sie die Wirkung der Verwendung von Optionsfeldern sehen. Wenn Sie nur RadioButton verwenden, müssen Sie natürlich die RadioGroup entfernen So erstellen Sie die Optionsschaltfläche für jedes Optionsfeld neu: Auf diese Weise unterscheidet sich dieser RadioButton nicht von Button. Es ist daher zu beachten, dass die Optionsschaltfläche zusammen mit RadioGroup verwendet werden muss die Radioauswahlfunktion.

Das Obige ist der Inhalt der Android-UI-Steuerelementserie: RadioButton (Radio-Button) Weitere verwandte Inhalte finden Sie auf der chinesischen PHP-Website (www.php.cn)!


Stellungnahme:
Der Inhalt dieses Artikels wird freiwillig von Internetnutzern beigesteuert und das Urheberrecht liegt beim ursprünglichen Autor. Diese Website übernimmt keine entsprechende rechtliche Verantwortung. Wenn Sie Inhalte finden, bei denen der Verdacht eines Plagiats oder einer Rechtsverletzung besteht, wenden Sie sich bitte an admin@php.cn