Android控件之CheckBox、RadioButton探究

简介: CheckBox和RadioButton控件都只有选中和未选中状态,不同的是RadioButton是单选按钮,需要编制到一个RadioGroup中,同一时刻一个RadioGroup中只能有一个按钮处于选中状态

以下为CheckBox和RadioButton常用方法及说明


image.png

<?xml version="1.0" encoding="utf-8"?>
<ScrollView xmlns:android="http://schemas.android.com/apk/res/android"
   android:layout_width
="fill_parent"
   android:layout_height
="fill_parent"
   android:scrollbars
="vertical">
   
<LinearLayout android:orientation="vertical"
   android:layout_width
="fill_parent"
   android:layout_height
="fill_parent">
       
<!-- RadioButton控件演示 -->
       
<ImageView android:id="@+id/imageView01"
           android:layout_width
="wrap_content"
           android:layout_height
="wrap_content"
           android:src
="@drawable/bulb_on"
           android:layout_gravity
="center_horizontal"/>
       
<RadioGroup android:id="@+id/radioGroup"
           android:orientation
="horizontal"
           android:layout_width
="wrap_content"
           android:layout_height
="wrap_content"
           android:layout_gravity
="center_horizontal">
           
<RadioButton android:id="@+id/on"
               android:text
="开灯"
               android:layout_width
="wrap_content"
               android:layout_height
="wrap_content"
               android:checked
="true"/>
           
<RadioButton android:id="@+id/off"
               android:text
="关灯"
               android:layout_width
="wrap_content"
               android:layout_height
="wrap_content"/>
       
</RadioGroup>
       
       
<!-- CheckBox控件演示 -->
       
<ImageView android:id="@+id/imageView02"
           android:layout_width
="wrap_content"
           android:layout_height
="wrap_content"
           android:src
="@drawable/bulb_on"
           android:layout_gravity
="center_horizontal"/>
       
<CheckBox android:id="@+id/checkBox"
           android:text
="开灯"
           android:checked
="true"
           android:layout_width
="wrap_content"
           android:layout_height
="wrap_content"
           android:layout_gravity
="center_horizontal"/>
   
</LinearLayout>
</ScrollView>



publicclass CbRbActivity extends Activity {
   
private ImageView imageView01=null;
   
private ImageView imageView02=null;
   
private CheckBox checkBox=null;
   
private RadioButton on=null;//开灯
   
   @Override
   
publicvoid onCreate(Bundle savedInstanceState) {
       
super.onCreate(savedInstanceState);
       setContentView(R.layout.main);
       
       imageView01
=(ImageView)findViewById(R.id.imageView01);
       imageView02
=(ImageView)findViewById(R.id.imageView02);
       checkBox
=(CheckBox)findViewById(R.id.checkBox);
       on
=(RadioButton)findViewById(R.id.on);
       
       on.setOnCheckedChangeListener(listener);
       checkBox.setOnCheckedChangeListener(listener);
   }
   
   OnCheckedChangeListener listener
=new OnCheckedChangeListener(){

       
publicvoid onCheckedChanged(CompoundButton buttonView,
               
boolean isChecked) {
           
if(buttonView instanceof RadioButton){
               imageView01.setImageResource(isChecked
?R.drawable.bulb_on:R.drawable.bulb_off);
           }
elseif(buttonView instanceof CheckBox){
               checkBox.setText(isChecked
?"开灯":"关灯");
               imageView02.setImageResource(isChecked
?R.drawable.bulb_on:R.drawable.bulb_off);
           }
       }
   };
}

目录
打赏
0
0
0
0
3
分享
相关文章
|
3月前
|
浅谈Android的TextView控件
浅谈Android的TextView控件
52 0
安卓开发中的自定义视图控件
【9月更文挑战第14天】在安卓开发中,自定义视图控件是一种高级技巧,它可以让开发者根据项目需求创建出独特的用户界面元素。本文将通过一个简单示例,引导你了解如何在安卓项目中实现自定义视图控件,包括创建自定义控件类、处理绘制逻辑以及响应用户交互。无论你是初学者还是有经验的开发者,这篇文章都会为你提供有价值的见解和技巧。
67 3
安卓开发中的自定义视图:构建你的第一个控件
【8月更文挑战第26天】在安卓开发的浩瀚海洋中,自定义视图是一块充满魔力的乐土。它不仅是开发者展示创造力的舞台,更是实现独特用户体验的关键。本文将带你步入自定义视图的世界,从基础概念到实战应用,一步步教你如何打造自己的第一个控件。无论你是初学者还是有经验的开发者,这篇文章都将为你的开发之旅增添新的风景。
探究Android应用开发中的内存泄漏检测与修复
在移动应用的开发过程中,优化用户体验和提升性能是至关重要的。对于Android平台而言,内存泄漏是一个常见且棘手的问题,它可能导致应用运行缓慢甚至崩溃。本文将深入探讨如何有效识别和解决内存泄漏问题,通过具体案例分析,揭示内存泄漏的成因,并提出相应的检测工具和方法。我们还将讨论一些最佳实践,帮助开发者预防内存泄漏,确保应用稳定高效地运行。
Android-自定义三角形评分控件
Android-自定义三角形评分控件
57 0
安卓与iOS开发中的跨平台策略
在移动应用开发的战场上,安卓和iOS两大阵营各据一方。随着技术的演进,跨平台开发框架成为开发者的新宠,旨在实现一次编码、多平台部署的梦想。本文将探讨跨平台开发的优势与挑战,并分享实用的开发技巧,帮助开发者在安卓和iOS的世界中游刃有余。
【02】写一个注册页面以及配置打包选项打包安卓apk测试—开发完整的社交APP-前端客户端开发+数据联调|以优雅草商业项目为例做开发-flutter开发-全流程-商业应用级实战开发-优雅草央千澈
【02】写一个注册页面以及配置打包选项打包安卓apk测试—开发完整的社交APP-前端客户端开发+数据联调|以优雅草商业项目为例做开发-flutter开发-全流程-商业应用级实战开发-优雅草央千澈
【02】写一个注册页面以及配置打包选项打包安卓apk测试—开发完整的社交APP-前端客户端开发+数据联调|以优雅草商业项目为例做开发-flutter开发-全流程-商业应用级实战开发-优雅草央千澈
探索安卓开发中的自定义视图:打造个性化用户界面
在安卓应用开发的广阔天地中,自定义视图是一块神奇的画布,让开发者能够突破标准控件的限制,绘制出独一无二的用户界面。本文将带你走进自定义视图的世界,从基础概念到实战技巧,逐步揭示如何在安卓平台上创建和运用自定义视图来提升用户体验。无论你是初学者还是有一定经验的开发者,这篇文章都将为你打开新的视野,让你的应用在众多同质化产品中脱颖而出。
65 19
探索安卓开发:打造你的首个天气应用
在这篇技术指南中,我们将一起潜入安卓开发的海洋,学习如何从零开始构建一个简单的天气应用。通过这个实践项目,你将掌握安卓开发的核心概念、界面设计、网络编程以及数据解析等技能。无论你是初学者还是有一定基础的开发者,这篇文章都将为你提供一个清晰的路线图和实用的代码示例,帮助你在安卓开发的道路上迈出坚实的一步。让我们一起开始这段旅程,打造属于你自己的第一个安卓应用吧!
70 14

热门文章

最新文章

AI助理

你好,我是AI助理

可以解答问题、推荐解决方案等