Android教程網
  1. 首頁
  2. Android 技術
  3. Android 手機
  4. Android 系統教程
  5. Android 游戲
 Android教程網 >> Android技術 >> 關於Android編程 >> UI控件之RadioButton(單選按鈕)&Checkbox(復選按鈕)

UI控件之RadioButton(單選按鈕)&Checkbox(復選按鈕)

編輯:關於Android編程

(一)概述:

 

這裡寫圖片描述

 

(二)RadioButton的基本用法與事件處理:

 

這裡寫圖片描述

 

效果圖:

 

這裡寫圖片描述

 

實現代碼:

xml文件

MainActivity.java

public class RadioButtonTest extends Activity {

private RadioGroup Rgroup;

private Button Rbutton;

@Override

protected void onCreate(Bundle savedInstanceState) {

// TODO Auto-generated method stub

super.onCreate(savedInstanceState);

setContentView(R.layout.radio_button_test);

Rgroup = (RadioGroup) findViewById(R.id.sex);

Rbutton = (Button) findViewById(R.id.SexId);

Rbutton.setOnClickListener(new OnClickListener() {

@Override

public void onClick(View v) {

// TODO Auto-generated method stub

int len = Rgroup.getChildCount();//獲得單選按鈕組的選項個數

String msgString = "";

for (int i = 0; i

代碼解析:

這裡我們為“選擇性別”按鈕綁定了setOnClickListener事件監聽器,每次點擊的話遍歷一次,RadioGroup判斷哪個按鈕被選中我們可以通過下述方法獲得RadioButton的相關信息!

getChildCount()獲得按鈕組中的單選按鈕的數目;

getChindAt(i):根據索引獲取我們的單選按鈕

isChecked():判斷按鈕是否被選中;

當然,我這裡是將選中的值的點擊事件綁定在了非RadioButton的其他Button上,其實,你也可以綁定在RadioButton自身的監聽器

 

這裡寫圖片描述

 

就像這樣:

 

這裡寫圖片描述

 

 

這裡寫圖片描述

 

你選了”+radbtn.getText() , Toast.LENGTH_LONG).show();

}

});

 

這裡寫圖片描述

 

(三)Checkbox(復選按鈕)的基本用法與事件處理:

 

這裡寫圖片描述

 

運行結果:

 

這裡寫圖片描述

 

第一種方法:綁定OnClickListener()來實現

實現代碼:

xml文件如下:

java文件如下:

/**

* CheckBox默認的情況下是未選中的狀態,如果想修改這個默認值的話,

* 可以將中的android:checked設置為true

* 或者使用CheckBox.setChecked方法設置都可以實現復選的功能。

* @author Eillot

*

*/

public class CheckBoxTest extends Activity implements OnClickListener{

private List checkBoxs = new ArrayList();

@Override

protected void onCreate(Bundle savedInstanceState) {

// TODO Auto-generated method stub

super.onCreate(savedInstanceState);

//setContentView(R.layout.check_box_test);

String cString[] = new String[]{"你是誰","我是要成為架構師的男人","你什麼時候才可以","我馬上就會成為"};

//動態加載布局

LinearLayout linearLayout = (LinearLayout) getLayoutInflater().inflate(R.layout.check_box_test, null);

//給指定的checkbox賦值

for (int i = 0; i < cString.length; i++) {

//先獲得checkbox.xml的對象

CheckBox checkBox = (CheckBox) getLayoutInflater().inflate(R.layout.checkbox, null);

checkBoxs.add(checkBox);

checkBoxs.get(i).setText(cString[i]);

// 實現了在

linearLayout.addView(checkBox,i);

}

setContentView(linearLayout);

Button button = (Button) findViewById(R.id.ensurenbutton);

button.setOnClickListener(this);

}

@Override

public void onClick(View v) {

// TODO Auto-generated method stub

String s ="";

for (CheckBox checkBox : checkBoxs) {

if (checkBox.isChecked()) {

s += checkBox.getText() + "\n";

}

}

if (" ".equals(s)) {

s = "你還沒有選中項!!";

}

// 使用一個提示框來提示用戶的信息

new AlertDialog.Builder(this).setMessage(s)

.setPositiveButton("關閉", null).show();

}

}

第二種方法:綁定setOnCheckedChangedListener()來實現

xml文件就不貼了,太簡單,java代碼如下:

 

這裡寫圖片描述

 

 

這裡寫圖片描述

 

 

這裡寫圖片描述

 

 

這裡寫圖片描述

 

(四)自定義點擊效果

 

這裡寫圖片描述

 

運行圖片:

 

這裡寫圖片描述

 

實現代碼:

 

這裡寫圖片描述

 

 

這裡寫圖片描述

 

 

這裡寫圖片描述

 

(五)改變字體跟選擇框的相對位置

 

這裡寫圖片描述

 

(六)修改文字跟選擇框的距離

 

這裡寫圖片描述

 

就像這樣:

 

這裡寫圖片描述

 

<完>

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