Android教程網
  1. 首頁
  2. Android 技術
  3. Android 手機
  4. Android 系統教程
  5. Android 游戲
 Android教程網 >> Android系統教程 >> Android開發教程 >> Android常見控件之RadioGroup,RadioButton,CheckBox和Toast

Android常見控件之RadioGroup,RadioButton,CheckBox和Toast

編輯:Android開發教程

一、RadioGroup和RadioButton

RadioButton單選按鈕是一種雙狀態的按鈕,可以選擇或不選中。在單選按鈕 沒有被選中時,用戶能夠按下或點擊來選中它。但是,與復選框相反,用戶一旦 選中就不能夠通過界面取消選中,但是可以通過代碼來取消選中狀態。

RadioGroup用於創建一組選中狀態相互排斥的單選按鈕組。一個組中,只有 一個按鈕可以被選中,選中了一個RadioButton會自動取消其它按鈕的選中狀態 。初始狀態下,所有的單選按鈕都未勾選,雖然不能取消一個特定的單選按鈕的 勾選狀態,但可以通過單選按鈕組去消除它的勾選狀態。RadioGroup和 RadioButton通常是放在一起使用的。

Interface RadioGroup.OnCheckedChangeListener是當單選按鈕組中的單選 按鈕的勾選狀態發生改變時,所要調用的回調函數的接口類。當我們希望當 RadioGroup中的RadioButton按鈕的選中狀態改變時執行相應的操作,為 RadioGroup添加監聽器。在這個類中我們需要復寫public void onCheckedChanged(RadioGroup group, int checkedId)方法,這個方法的兩個 參數分別為傳遞進來的組以及組中選中的RadioButton的id。我們可以通過這個 id來判斷哪一個按鈕被選中,從而執行相應的操作。

二、CheckBox

CheckBox繼承自CompoundButton,是有雙狀態按鈕的復選框,可以選中也可 以不選中。CheckBox沒有組的概念,可以獨立使用。可以為CheckBox添加監聽器 ,在監聽器的代碼中需要復寫public void onCheckedChanged(CompoundButton buttonView, boolean isChecked)方法,方法的兩個參數分別為CompoundButton 和選中狀態,因為CheckBox繼承自CompoundButton,是CompoundButton的子類, 所以可以轉化為CompoundButton。

三、Toast

Toast是一種提供給用戶簡潔信息的視圖。Toast類幫助你創建和顯示該信息 。該視圖已浮於應用程序之上的形式呈現給用戶。因為它並不獲得焦點,即使用 戶正在輸入什麼也不會受到影響。它的目標是盡可能已不顯眼的方式,使用戶看 到你提供的信息。使用該控件最簡單的方法是調用該類的靜態方法public static Toast makeText (Context context, CharSequence text, int duration) 返回一個Toast對象,然後再調用Show()方法就可以了。例如Toast. makeText (Context context, CharSequence text, int duration).show()。這 個方法的第一個參數是上下文對象,通常是你的應用程序或者Activity對象,第 二個參數就是要顯示的文本內容,可以格式化文本,第三個參數是持續多長時間 來顯示消息,有兩個常量:LENGTH_SHORT 或者LENGTH_LONG。

示例:

新建一個Android應用程序。 編寫main.xml文件,添加一個RadioGroup標簽 (還可以設置此標簽內的布局方向是水平布局還是垂直布局)。 在RadioGroup 標簽內添加兩個RadioButton。然後再添加3個CheckBox復選框。當我們點擊單選 按鈕或者選中復選框的時候會提示相應的信息。

Android_Select.java

01.package com.idea.org;
02.
03.import android.app.Activity;
04.import android.os.Bundle;
05.import android.widget.CheckBox;
06.import android.widget.CompoundButton;
07.import android.widget.RadioButton;
08.import android.widget.RadioGroup;
09.import android.widget.Toast;
10.
11.public class Android_Select extends Activity {
12.    private RadioGroup radioGroup=null;
13.    private RadioButton radioButtonFemale=null;
14.    private RadioButton radioButtonMale=null;
15.    private CheckBox checkBoxSwim=null;
16.    private CheckBox checkBoxRun=null;
17.    private CheckBox checkBoxRead=null;
18.    /** Called when the activity is first created. */
19.    @Override
20.    public void onCreate(Bundle savedInstanceState) {
21.        super.onCreate(savedInstanceState);
22.        setContentView(R.layout.main);
23.        radioGroup=(RadioGroup)findViewById(R.id.radioGroup);
24.        radioButtonFemale=(RadioButton)findViewById(R.id.radioButtonFemale);
25.        radioButtonMale=(RadioButton)findViewById(R.id.radioButtonMale);
26.        checkBoxSwim=(CheckBox)findViewById(R.id.checkBoxSwim);
27.        checkBoxRun=(CheckBox)findViewById(R.id.checkBoxRun);
28.        checkBoxRead=(CheckBox)findViewById(R.id.checkBoxRead);
29.        //為radioGroup添加監聽器
30.        radioGroup.setOnCheckedChangeListener(new RadioGroup.OnCheckedChangeListener() {
31.
32.            @Override
33.            public void onCheckedChanged(RadioGroup group, int checkedId) {
34.                // TODO Auto-generated method stub
35.                if(radioButtonFemale.getId()==checkedId)
36.                {
37.                    //調用Toast的靜態方法顯示提示消息
38.                    Toast.makeText(Android_Select.this,"女性",Toast.LENGTH_SHORT).show();
39.                }
40.                else if(radioButtonMale.getId()==checkedId)
41.                {
42.                    Toast.makeText(Android_Select.this,"男性",Toast.LENGTH_SHORT).show();
43.                }
44.            }
45.        });
46.        //為復選框添加監聽器
47.        checkBoxSwim.setOnCheckedChangeListener(new CompoundButton.OnCheckedChangeListener() {
48.
49.            @Override
50.            public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) {
51.                // TODO Auto-generated method stub
52.                if(isChecked==true)
53.                    Toast.makeText(Android_Select.this,"游泳",Toast.LENGTH_SHORT).show();
54.            }
55.        });
56.        checkBoxRun.setOnCheckedChangeListener(new CompoundButton.OnCheckedChangeListener() {
57.
58.            @Override
59.            public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) {
60.                // TODO Auto-generated method stub
61.                if(isChecked==true)
62.                    Toast.makeText(Android_Select.this,"跑步",Toast.LENGTH_SHORT).show();
63.            }
64.        });
65.        checkBoxRead.setOnCheckedChangeListener(new CompoundButton.OnCheckedChangeListener() {
66.
67.        @Override
68.        public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) {
69.            // TODO Auto-generated method stub
70.            if(isChecked==true)
71.                Toast.makeText(Android_Select.this,"閱讀",Toast.LENGTH_SHORT).show();
72.        }
73.    });
74.    }
75.}

  1. 上一頁:
  2. 下一頁:
熱門文章
閱讀排行版
Copyright © Android教程網 All Rights Reserved