Android教程網
  1. 首頁
  2. Android 技術
  3. Android 手機
  4. Android 系統教程
  5. Android 游戲
 Android教程網 >> Android技術 >> Android開發 >> 開發入門 >> Android基礎教程(七)之----單選項框RadioGroup的綜合應用

Android基礎教程(七)之----單選項框RadioGroup的綜合應用

編輯:開發入門

大家好,我們今天這一節要介紹的是RadioGroup 的組事件.RadioGroup 可將各自不同的RadioButton ,設限於同一個Radio 按鈕組,同一個RadioGroup 組裡的按鈕,只能做出單一選擇(單選題).

首先,我們先設計一個TextView Widget ,以及一個RadioGroup ,並將該RadioGroup 內放置兩個RadioButton ,默認為都不選擇,在程序運行階段,利用onCheckedChanged 作為啟動事件裝置,讓User選擇其中一個按鈕,顯示被選擇的內容,最的將RadioButton 的選項文字顯示於TextVIEw 當中.

下面我們看一下效果圖:

    

 

下面是涉及的相關代碼:

string.XML:

<?XML version="1.0" encoding="utf-8"?>
<resources>
  <string name="hello">Hello World, RadioGroupDemo</string>
  <string name="app_name">RadioGroupDemo</string>
  <string name="tr_radio_op1">帥哥</string>
  <string name="tr_radio_op2">美女</string>
  <string name="str_radio_question1">請問你是?</string> 
</resources>

主布局main.XML:

<?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 -->
  <TextVIEw
    android:id="@+id/myTextVIEw"
    android:layout_width="228px"
    android:layout_height="49px"
    android:text="@string/str_radio_question1"
    android:textSize="30sp"    
  />   
  <!--建立一個RadioGroup -->
  <RadioGroup
    android:id="@+id/myRadioGroup"
    android:layout_width="137px"
    android:layout_height="216px"
    android:orIEntation="vertical"
    >
    <!--第一個RadioButton -->
    <RadioButton
      android:id="@+id/myRadioButton1"
      android:layout_width="wrap_content"
      android:layout_height="wrap_content"
      android:text="@string/tr_radio_op1"
    />
    <!--第二個RadioButton -->
    <RadioButton
      android:id="@+id/myRadioButton2"
      android:layout_width="wrap_content"
      android:layout_height="wrap_content"
      android:text="@string/tr_radio_op2"
    />
    </RadioGroup>     
</LinearLayout>

最後是主控制程序RadioGroupDemo.Java:

package com.android.test;

import android.app.Activity;
import android.os.Bundle;
import android.widget.RadioButton;
import android.widget.RadioGroup;
import android.widget.TextVIEw;

public class RadioGroupDemo extends Activity 
{
  public TextView mTextVIEw1;
  public RadioGroup mRadioGroup1; 
  public RadioButton mRadio1,mRadio2; 
  
  public void onCreate(Bundle savedInstanceState) 
  { 
    super.onCreate(savedInstanceState); 
    setContentVIEw(R.layout.main); 
     
    /*取得 TextVIEw、RadioGroup、RadioButton對象*/
    mTextView1 = (TextView) findViewById(R.id.myTextVIEw);
    mRadioGroup1 = (RadioGroup) findVIEwById(R.id.myRadioGroup);
    mRadio1 = (RadioButton) findVIEwById(R.id.myRadioButton1);
    mRadio2 = (RadioButton) findVIEwById(R.id.myRadioButton2); 
      
    /*RadioGroup用OnCheckedChangeListener來運行*/ 
    mRadioGroup1.setOnCheckedChangeListener(mChangeRadio); 
  } 
   
  private RadioGroup.OnCheckedChangeListener mChangeRadio = new 
           RadioGroup.OnCheckedChangeListener()
  { 
    @Override 
    public void onCheckedChanged(RadioGroup group, int checkedId)
    { 
      // TODO Auto-generated method stub 
      if(checkedId==mRadio1.getId())
      { 
        /*把mRadio1的內容傳到mTextVIEw1*/
        mTextVIEw1.setText(mRadio1.getText());
      } 
      else if(checkedId==mRadio2.getId()) 
      { 
        /*把mRadio2的內容傳到mTextVIEw1*/
        mTextVIEw1.setText(mRadio2.getText()); 
      }       
    } 
  }; 
}

運行RadioGroupDemo.Java ,將得到以上效果...今天就到這~


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