Java学习者论坛

 找回密码
 立即注册

QQ登录

只需一步,快速开始

手机号码,快捷登录

恭喜Java学习者论坛(https://www.javaxxz.com)已经为数万Java学习者服务超过8年了!积累会员资料超过10000G+
成为本站VIP会员,下载本站10000G+会员资源,购买链接:点击进入购买VIP会员
JAVA高级面试进阶视频教程Java架构师系统进阶VIP课程

分布式高可用全栈开发微服务教程

Go语言视频零基础入门到精通

Java架构师3期(课件+源码)

Java开发全终端实战租房项目视频教程

SpringBoot2.X入门到高级使用教程

大数据培训第六期全套视频教程

深度学习(CNN RNN GAN)算法原理

Java亿级流量电商系统视频教程

互联网架构师视频教程

年薪50万Spark2.0从入门到精通

年薪50万!人工智能学习路线教程

年薪50万!大数据从入门到精通学习路线年薪50万!机器学习入门到精通视频教程
仿小米商城类app和小程序视频教程深度学习数据分析基础到实战最新黑马javaEE2.1就业课程从 0到JVM实战高手教程 MySQL入门到精通教程
查看: 665|回复: 0

Android---UI篇---RadioButton(单选按钮)-  Android学习

[复制链接]

该用户从未签到

发表于 2011-10-24 15:00:23 | 显示全部楼层 |阅读模式
单选按钮RadioButton在Android平台上也应用的非常多,比如一些选择项的时候,会用到单选按钮,实现单选按钮由两部分组成,也就是RadioButton和RadioGroup配合使用

RadioButton的单选按钮;
RadioGroup是单选组合框,用于将RadioButton框起来;
在没有RadioGroup的情况下,RadioButton可以全部都选中;
当多个RadioButton被RadioGroup包含的情况下,RadioButton只可以选择一个;

注意:单选按钮的事件监听用setOnCheckedChangeListener来对单选按钮进行监听
例子:
一道选择题,选择哪个城市美女最多,当然,这个就是为了测试
RadioTest.java

Java代码
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 {

    /** Called when the activity is first created. */

        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代码
<?xml version="1.0" encoding="utf-8"?>

<resources>

    <string name="hello">哪个城市美女多?</string>

    <string name="app_name">单选按钮测试</string>

    <string name="radiobutton1">杭州</string>

    <string name="radiobutton2">成都</string>

    <string name="radiobutton3">重庆</string>

    <string name="radiobutton4">苏州</string>

</resources>
复制代码

main.xml文件:注意,这里面,4个RadioButton包含在RadioGroup中

Java代码
<?xml version="1.0" encoding="utf-8"?>

<LinearLayout xmlns:android="http://schemas.android.com/apk/res/android"

    androidrientation="vertical"

    android:layout_width="fill_parent"

    android:layout_height="fill_parent"

    >

<TextView  

    android:layout_width="fill_parent"

    android:layout_height="wrap_content"

    android:text="@string/hello"

    android:id="@+id/textview1"

    />

    <RadioGroup

            android:id="@+id/radiogroup1"

            android:layout_width="wrap_content"

            android:layout_height="wrap_content"

            android:orientation="vertical"

            android:layout_x="3px"

    >

            <RadioButton

                    android:id="@+id/radiobutton1"

                    android:layout_width="wrap_content"

                    android:layout_height="wrap_content"

                    android:text="@string/radiobutton1"

            />

            <RadioButton

                    android:id="@+id/radiobutton2"

                    android:layout_width="wrap_content"

                    android:layout_height="wrap_content"

                    android:text="@string/radiobutton2"

            />

            <RadioButton

                    android:id="@+id/radiobutton3"

                    android:layout_width="wrap_content"

                    android:layout_height="wrap_content"

                    android:text="@string/radiobutton3"

            />

            <RadioButton

                    android:id="@+id/radiobutton4"

                    android:layout_width="wrap_content"

                    android:layout_height="wrap_content"

                    android:text="@string/radiobutton4"

            />

    </RadioGroup>

</LinearLayout>
复制代码

运行结果如下:



假如我们选择杭州,会提示错误的Toast



再次选中成都后,会提示答案正确



这里就可以看到,单选按钮的使用效果,如果只是使用RadioButton的话,把配置文件中RadioGroup去掉,当然,要重新为每个单选按钮设置监听,这样,这个RadioButton就跟Button没有什么区别了,我们可以选中多个,所以要注意,单选按钮要和RadioGroup一起使用,才能够实现单选的功能
回复

使用道具 举报

该用户从未签到

发表于 2011-10-24 15:00:27 | 显示全部楼层

Re:Android---UI

挺好的,顶一下了
回复 支持 反对

使用道具 举报

您需要登录后才可以回帖 登录 | 立即注册

本版积分规则

QQ|手机版|Java学习者论坛 ( 声明:本站资料整理自互联网,用于Java学习者交流学习使用,对资料版权不负任何法律责任,若有侵权请及时联系客服屏蔽删除 )

GMT+8, 2025-1-11 14:11 , Processed in 0.310950 second(s), 36 queries .

Powered by Discuz! X3.4

© 2001-2017 Comsenz Inc.

快速回复 返回顶部 返回列表