Android(安卓)单选按钮RadioButton的使用
单选按钮RadioButton在Android平台上也应用的非常多,比如一些选择项的时候,会用到单选按钮,实现单选按钮由两部分组成,也就是RadioButton和RadioGroup配合使用
RadioButton的单选按钮;
RadioGroup是单选组合框,用于将RadioButton框起来;
在没有RadioGroup的情况下,RadioButton可以全部都选中;
当多个RadioButton被RadioGroup包含的情况下,RadioButton只可以选择一个;
注意:单选按钮的事件监听用setOnCheckedChangeListener来对单选按钮进行监听
例子:
一道选择题,选择哪个城市美女最多,当然,这个就是为了测试
RadioTest.java
Java代码 单选按钮RadioButton的使用" style="border:0px;list-style:none;" width="0" height="0">
- 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 {
- 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文件
Java代码 单选按钮RadioButton的使用" style="border:0px;list-style:none;" width="0" height="0">
- <?xml version="1.0" encoding="utf-8"?>
-
-
"hello" >哪个城市美女多? -
"app_name" >单选按钮测试 -
"radiobutton1" >杭州 -
"radiobutton2" >成都 -
"radiobutton3" >重庆 -
"radiobutton4" >苏州
main.xml文件:注意,这里面,4个RadioButton包含在RadioGroup中
Java代码 单选按钮RadioButton的使用" style="border:0px;list-style:none;" width="0" height="0">
- <?xml version="1.0" encoding="utf-8"?>
-
"http://schemas.android.com/apk/res/android" - android:orientation="vertical"
- android:layout_width="fill_parent"
- android:layout_height="fill_parent"
- >
-
- android:layout_width="fill_parent"
- android:layout_height="wrap_content"
- android:text="@string/hello"
- android:id="@+id/textview1"
- />
-
- android:id="@+id/radiogroup1"
- android:layout_width="wrap_content"
- android:layout_height="wrap_content"
- android:orientation="vertical"
- android:layout_x="3px"
- >
-
- android:id="@+id/radiobutton1"
- android:layout_width="wrap_content"
- android:layout_height="wrap_content"
- android:text="@string/radiobutton1"
- />
-
- android:id="@+id/radiobutton2"
- android:layout_width="wrap_content"
- android:layout_height="wrap_content"
- android:text="@string/radiobutton2"
- />
-
- android:id="@+id/radiobutton3"
- android:layout_width="wrap_content"
- android:layout_height="wrap_content"
- android:text="@string/radiobutton3"
- />
-
- android:id="@+id/radiobutton4"
- android:layout_width="wrap_content"
- android:layout_height="wrap_content"
- android:text="@string/radiobutton4"
- />
运行结果如下:
单选按钮RadioButton的使用" style="border:0px;list-style:none;" width="0" height="0">
假如我们选择杭州,会提示错误的Toast
单选按钮RadioButton的使用" style="border:0px;list-style:none;" width="0" height="0">
再次选中成都后,会提示答案正确
单选按钮RadioButton的使用" style="border:0px;list-style:none;" width="0" height="0">
这 里就可以看到,单选按钮的使用效果,如果只是使用RadioButton的话,把配置文件中RadioGroup去掉,当然,要重新为每个单选按钮设置监 听,这样,这个RadioButton就跟Button没有什么区别了,我们可以选中多个,所以要注意,单选按钮要和RadioGroup一起使用,才能 够实现单选的功能
二:修改RadioButton样式
可能你觉得RadioButton的样式不好看,没关系,你可以自己设置喜欢的图片显示,方法如下:
1)在drawable文件夹下增加文档myradiobutton.xml,描述button在各个状态下得图片:
2)然后在布局文件中修改Radiobutton属性(android:button):
|
更多相关文章
- Android(安卓)带checkbox的listView 实现多选,全选,反选
- Android环境搭建_
- Android(安卓)动态添加按钮,并获取id,添加事件
- Android常用控件(按钮、选择框、日期时间控件)
- Android(安卓)Studio如何导入第三方工程包
- (ios实现)用c/c++混合编程方式为ios/android实现一个自绘日期选
- Android(安卓)ADT下载安装
- #Android学习#android:src=""的用法
- Android(安卓)Studio TV开发教程(二)管理电视控制器