热门标签 | HotTags
当前位置:  开发笔记 > 编程语言 > 正文

常用控件RadioButton/CheckBox/Toast

一、RadioButton1、一组RadioButton被一个RadioGroup所包围[xhtml]viewplaincopy





一、RadioButton

1、一组RadioButton被一个RadioGroup所包围

[xhtml] view plaincopy
  1. <RadioGroup android:id&#61;"&#64;&#43;id/gender"   
  2.         android:orientation&#61;"vertical"   
  3.         android:layout_width&#61;"wrap_content"   
  4.         android:layout_height&#61;"wrap_content">  
  5.               
  6.             <RadioButton android:id&#61;"&#64;&#43;id/female"   
  7.                 android:layout_width&#61;"wrap_content"   
  8.                 android:layout_height&#61;"wrap_content"   
  9.                 android:text&#61;"&#64;string/female" />  
  10.                   
  11.             <RadioButton android:id&#61;"&#64;&#43;id/male"   
  12.                 android:layout_width&#61;"wrap_content"   
  13.                 android:layout_height&#61;"wrap_content"   
  14.                 android:text&#61;"&#64;string/male" />  
  15.               
  16.     RadioGroup>  

2、RadioButton的事件监听器是绑定在RadioGroup上面的

[java] view plaincopy
  1. // 为RadioGroup绑定监听器而不是给RadioButton  
  2.         // 事件监听器onCheckedChangeListener是RadioGroup的一个内部类  
  3.         // 这里使用匿名内部类  
  4.         genderGroup.setOnCheckedChangeListener(new RadioGroup.OnCheckedChangeListener() {  
  5.               
  6.             // 参数checkedId代表事件源radioButton的id&#xff0c;通过这个比较来判断事件源  
  7.             &#64;Override  
  8.             public void onCheckedChanged(RadioGroup group, int checkedId) {  
  9.                 if (checkedId &#61;&#61; R.id.female) {  
  10.                     System.out.println("female");  
  11.                     // Toast控件&#xff0c;第一个参数为一个context,在此即当前activity对象  
  12.                     // 第二个参数为要显示的文字  
  13.                     // 第三个参数为显示的时间长短&#xff0c;有Toast.LENGTH_SHORT和Toast.LENGTH_LONG两种  
  14.                     Toast.makeText(RadioCheckBoxToast.this"female", Toast.LENGTH_SHORT).show();  
  15.                 } else if (checkedId &#61;&#61; R.id.male) {  
  16.                     System.out.println("male");  
  17.                     Toast.makeText(RadioCheckBoxToast.this"male", Toast.LENGTH_SHORT).show();  
  18.                 }  
  19.             }  
  20.         });  

二、CheckBox

不同于&#xff0c;各个CheckBox之间是相互独立的

[xhtml] view plaincopy
  1. <CheckBox android:id&#61;"&#64;&#43;id/running"   
  2.         android:layout_width&#61;"wrap_content"   
  3.         android:layout_height&#61;"wrap_content"   
  4.         android:text&#61;"&#64;string/running" />  
  5.           
  6. <CheckBox android:id&#61;"&#64;&#43;id/reading"   
  7.         android:layout_width&#61;"wrap_content"   
  8.         android:layout_height&#61;"wrap_content"   
  9.         android:text&#61;"&#64;string/reading" />  
  10.           
  11. <CheckBox android:id&#61;"&#64;&#43;id/swimming"   
  12.         android:layout_width&#61;"wrap_content"   
  13.         android:layout_height&#61;"wrap_content"   
  14.         android:text&#61;"&#64;string/swimming" />  

2、CheckBox的事件监听器是绑定在各个控件自己身上的

[java] view plaincopy
  1. // 为CheckBox绑定监听器  
  2.         // CheckBox是extends CompoundButton,其事件监听器也是在CompoundButton  
  3.         // 监听器的名字也是onCheckedChangeListener  
  4.         // RadioButton也是extends CompoundButton,但是在上面由于事件监听器绑定的是RadioGroup而不是  
  5.         // RadioButton&#xff0c;所以是用RadioGroup里面的listener  
  6.         runningCheck.setOnCheckedChangeListener(new CompoundButton.OnCheckedChangeListener() {  
  7.               
  8.             &#64;Override  
  9.             public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) {  
  10.                 if (true &#61;&#61; isChecked) {  
  11.                     System.out.println(buttonView.getText() &#43; "被选择");  
  12.                 } else {  
  13.                     System.out.println(buttonView.getText() &#43; "取消选择");  
  14.                 }  
  15.             }  
  16.         });  
  17.         readingCheck.setOnCheckedChangeListener(new CompoundButton.OnCheckedChangeListener() {  
  18.               
  19.             &#64;Override  
  20.             public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) {  
  21.                 if (true &#61;&#61; isChecked) {  
  22.                     System.out.println(buttonView.getText() &#43; "被选择");  
  23.                 } else {  
  24.                     System.out.println(buttonView.getText() &#43; "取消选择");  
  25.                 }  
  26.             }  
  27.         });  
  28.         swmmingCheck.setOnCheckedChangeListener(new CompoundButton.OnCheckedChangeListener() {  
  29.       
  30.             &#64;Override  
  31.             public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) {  
  32.                 if (true &#61;&#61; isChecked) {  
  33.                     System.out.println(buttonView.getText() &#43; "被选择");  
  34.                 } else {  
  35.                     System.out.println(buttonView.getText() &#43; "取消选择");  
  36.                 }  
  37.             }  
  38.         });  

三、Toast&#xff0c;该控件不用在布局文件中定义&#xff0c;直接在java源文件中

[c-sharp] view plaincopy
  1. // Toast控件&#xff0c;第一个参数为一个context,在此即当前activity对象  
  2.                     // 第二个参数为要显示的文字  
  3.                     // 第三个参数为显示的时间长短&#xff0c;有Toast.LENGTH_SHORT和Toast.LENGTH_LONG两种  
  4.                     Toast.makeText(RadioCheckBoxToast.this"female", Toast.LENGTH_SHORT).show();  

 


推荐阅读
  • 1,关于死锁的理解死锁,我们可以简单的理解为是两个线程同时使用同一资源,两个线程又得不到相应的资源而造成永无相互等待的情况。 2,模拟死锁背景介绍:我们创建一个朋友 ... [详细]
  • Iamtryingtomakeaclassthatwillreadatextfileofnamesintoanarray,thenreturnthatarra ... [详细]
  • 在Android开发中,使用Picasso库可以实现对网络图片的等比例缩放。本文介绍了使用Picasso库进行图片缩放的方法,并提供了具体的代码实现。通过获取图片的宽高,计算目标宽度和高度,并创建新图实现等比例缩放。 ... [详细]
  • android listview OnItemClickListener失效原因
    最近在做listview时发现OnItemClickListener失效的问题,经过查找发现是因为button的原因。不仅listitem中存在button会影响OnItemClickListener事件的失效,还会导致单击后listview每个item的背景改变,使得item中的所有有关焦点的事件都失效。本文给出了一个范例来说明这种情况,并提供了解决方法。 ... [详细]
  • 本文介绍了OC学习笔记中的@property和@synthesize,包括属性的定义和合成的使用方法。通过示例代码详细讲解了@property和@synthesize的作用和用法。 ... [详细]
  • 在说Hibernate映射前,我们先来了解下对象关系映射ORM。ORM的实现思想就是将关系数据库中表的数据映射成对象,以对象的形式展现。这样开发人员就可以把对数据库的操作转化为对 ... [详细]
  • 本文讨论了一个关于cuowu类的问题,作者在使用cuowu类时遇到了错误提示和使用AdjustmentListener的问题。文章提供了16个解决方案,并给出了两个可能导致错误的原因。 ... [详细]
  • 后台获取视图对应的字符串
    1.帮助类后台获取视图对应的字符串publicclassViewHelper{将View输出为字符串(注:不会执行对应的ac ... [详细]
  • XML介绍与使用的概述及标签规则
    本文介绍了XML的基本概念和用途,包括XML的可扩展性和标签的自定义特性。同时还详细解释了XML标签的规则,包括标签的尖括号和合法标识符的组成,标签必须成对出现的原则以及特殊标签的使用方法。通过本文的阅读,读者可以对XML的基本知识有一个全面的了解。 ... [详细]
  • Spring源码解密之默认标签的解析方式分析
    本文分析了Spring源码解密中默认标签的解析方式。通过对命名空间的判断,区分默认命名空间和自定义命名空间,并采用不同的解析方式。其中,bean标签的解析最为复杂和重要。 ... [详细]
  • 向QTextEdit拖放文件的方法及实现步骤
    本文介绍了在使用QTextEdit时如何实现拖放文件的功能,包括相关的方法和实现步骤。通过重写dragEnterEvent和dropEvent函数,并结合QMimeData和QUrl等类,可以轻松实现向QTextEdit拖放文件的功能。详细的代码实现和说明可以参考本文提供的示例代码。 ... [详细]
  • 开发笔记:加密&json&StringIO模块&BytesIO模块
    篇首语:本文由编程笔记#小编为大家整理,主要介绍了加密&json&StringIO模块&BytesIO模块相关的知识,希望对你有一定的参考价值。一、加密加密 ... [详细]
  • Mac OS 升级到11.2.2 Eclipse打不开了,报错Failed to create the Java Virtual Machine
    本文介绍了在Mac OS升级到11.2.2版本后,使用Eclipse打开时出现报错Failed to create the Java Virtual Machine的问题,并提供了解决方法。 ... [详细]
  • Spring特性实现接口多类的动态调用详解
    本文详细介绍了如何使用Spring特性实现接口多类的动态调用。通过对Spring IoC容器的基础类BeanFactory和ApplicationContext的介绍,以及getBeansOfType方法的应用,解决了在实际工作中遇到的接口及多个实现类的问题。同时,文章还提到了SPI使用的不便之处,并介绍了借助ApplicationContext实现需求的方法。阅读本文,你将了解到Spring特性的实现原理和实际应用方式。 ... [详细]
  • PHP中的单例模式与静态变量的区别及使用方法
    本文介绍了PHP中的单例模式与静态变量的区别及使用方法。在PHP中,静态变量的存活周期仅仅是每次PHP的会话周期,与Java、C++不同。静态变量在PHP中的作用域仅限于当前文件内,在函数或类中可以传递变量。本文还通过示例代码解释了静态变量在函数和类中的使用方法,并说明了静态变量的生命周期与结构体的生命周期相关联。同时,本文还介绍了静态变量在类中的使用方法,并通过示例代码展示了如何在类中使用静态变量。 ... [详细]
author-avatar
的发个地方
这个家伙很懒,什么也没留下!
PHP1.CN | 中国最专业的PHP中文社区 | DevBox开发工具箱 | json解析格式化 |PHP资讯 | PHP教程 | 数据库技术 | 服务器技术 | 前端开发技术 | PHP框架 | 开发工具 | 在线工具
Copyright © 1998 - 2020 PHP1.CN. All Rights Reserved | 京公网安备 11010802041100号 | 京ICP备19059560号-4 | PHP1.CN 第一PHP社区 版权所有