有想過友Android的小屏幕上把asp.net 的RadionButtonList搬進來用嗎?答案是肯定的,Android 的Tool工具提供了一個RadioGroup控件,可將各大自不同的RadioButton設限于同一個Radio按鈕組,這樣子就可以做到單選的效果了,那要怎么樣用呢?先看截圖:

Android 小項目之--猜名字有獎!RadionButton 和RadionGroup應用(附源碼)

我們要做的事是:當用戶猜題或者選擇一個特定某個選項時,我們將在後臺判斷用戶是否選中,如果選中者相應的做出處理,具體處理看各自項目的需求,代碼片段一:

代码 mButton.setOnClickListener( new OnClickListener(){

@Override
public void onClick(Viewv){
// TODOAuto-generatedmethodstub
if (mRadioButton1.isChecked())
{
mRadioButton1.setChecked(
false );
}
if (mRadioButton2.isChecked())
{
mRadioButton2.setChecked(
false );
}
if (mRadioButton3.isChecked())
{
mRadioButton3.setChecked(
false );
}
if (mRadioButton4.isChecked())
{
mRadioButton4.setChecked(
false );
}

}
});

按鈕事件,重置選中按鈕為未選中狀態。

代碼片段二:

代码 list = new OnCheckedChangeListener(){

@Override
public void onCheckedChanged(RadioGroupgroup, int checkedId){
// TODOAuto-generatedmethodstub
RadioButtonbtn = (RadioButton)findViewById(checkedId);
if (btn.isChecked())
{
switch (checkedId){
case R.id.RadioButton01:


Show(
" 回答錯誤! " );

break ;
case R.id.RadioButton02:

Show(
" 回答錯誤! " );

break ;
case R.id.RadioButton03:

Show(
" 回答正確,獎勵你100分 " );

break ;
case R.id.RadioButton04:

Show(
" 回答錯誤! " );

break ;

}
}

}
};

mGroup.setOnCheckedChangeListener(list);
}

步驟分析:一,通過checkid判斷用戶選中哪一個按鈕再判斷,如果狀態為ischeck()則做出相應處理

二,通過checkid做出彈出處理效果

完整代碼如下:

代码 package cn.terry;

import android.app.Activity;
import android.app.AlertDialog;
import android.os.Bundle;
import android.view.View;
import android.view.View.OnClickListener;
import android.widget. * ;
import android.widget.RadioGroup.OnCheckedChangeListener;
public class TestRadioButton extends Activity{
private RadioGroupmGroup;
private ButtonmButton;
private RadioButtonmRadioButton1;
private RadioButtonmRadioButton2;
private RadioButtonmRadioButton3;
private RadioButtonmRadioButton4;
private OnCheckedChangeListenerlist;

/** Calledwhentheactivityisfirstcreated. */
@Override
public void onCreate(BundlesavedInstanceState){
super .onCreate(savedInstanceState);
setContentView(R.layout.main);
mGroup
= (RadioGroup)findViewById(R.id.group);
mButton
= (Button)findViewById(R.id.Button1);
mRadioButton1
= (RadioButton)findViewById(R.id.RadioButton01);
mRadioButton2
= (RadioButton)findViewById(R.id.RadioButton02);
mRadioButton3
= (RadioButton)findViewById(R.id.RadioButton03);
mRadioButton4
= (RadioButton)findViewById(R.id.RadioButton04);

mButton.setOnClickListener(
new OnClickListener(){

@Override
public void onClick(Viewv){
// TODOAuto-generatedmethodstub
if (mRadioButton1.isChecked())
{
mRadioButton1.setChecked(
false );
}
if (mRadioButton2.isChecked())
{
mRadioButton2.setChecked(
false );
}
if (mRadioButton3.isChecked())
{
mRadioButton3.setChecked(
false );
}
if (mRadioButton4.isChecked())
{
mRadioButton4.setChecked(
false );
}

}
});

list
= new OnCheckedChangeListener(){

@Override
public void onCheckedChanged(RadioGroupgroup, int checkedId){
// TODOAuto-generatedmethodstub
RadioButtonbtn = (RadioButton)findViewById(checkedId);
if (btn.isChecked())
{
switch (checkedId){
case R.id.RadioButton01:


Show(
" 回答錯誤! " );

break ;
case R.id.RadioButton02:

Show(
" 回答錯誤! " );

break ;
case R.id.RadioButton03:

Show(
" 回答正確,獎勵你100分 " );

break ;
case R.id.RadioButton04:

Show(
" 回答錯誤! " );

break ;

}
}

}
};

mGroup.setOnCheckedChangeListener(list);
}

public void Show(Stringmsg)
{
new AlertDialog.Builder(TestRadioButton. this )
.setTitle(
" 提示 " )
.setMessage(msg)
.setPositiveButton(
" 確定 " , null ).create().show();
}






}

源碼下載:/Files/TerryBlog/TestRadioButton.rar

如果你有什麽不懂的可以:QQ285735942 或 Email:terryyhl@gmail.com 希望能幫得到您。

更多相关文章

  1. Android碎碎念 -- 性能测试,适用于Android Studio的代码审查和性
  2. 对系统学习与写博客的看法——学完《第一行代码》有感
  3. Android开发——纯JAVA代码方式界面设计
  4. GDB调试Android代码——环境搭建及调试过程
  5. 【Android】蓝牙开发—— 经典蓝牙配对介绍(Java代码实现演示)附De
  6. Android实现LED灯显示效果
  7. android selector设置button点击效果(详细)以及常见问题

随机推荐

  1. Android 开发中最常用的 GitHub 优秀的 A
  2. Android Bluetooth研究
  3. Android(安卓)Framework系列之IPC(一)
  4. Professional Android 2 Development - 1
  5. android中使用heap分析工具导出到MAT
  6. Android 软键盘遮挡问题
  7. 转载:android 进程保活
  8. Android SDK 与API版本对应关系
  9. Android核心分析(22)-----Android应用框架
  10. androidの监听EditView中的文本TextWatch