19讲 UI组件之_Buttoncheckboxradio

四、按钮Button

Button继承自TextView,间接继承自View。当用户对按钮进行操作的时候,触发相应事件,如点击,触摸。

、ImageButton

ImageButton继承自Button,可以在ImageButton中显示一个图片展示给用户看,并且对其Text属性设置值的时候是无效的,其它功能与Button一样。

<ImageButton

android:id="@+id/imageButton1"

android:layout_width="wrap_content"

android:layout_height="wrap_content"

android:src="@drawable/ic_launcher" />

 

为ImageButton添加监听器注册事件

方式1:通过onClickListener

imgBtn01.setOnClickListener(newOnClickListener() {

public void onClick(View v) {   myTextView.setText("ImageButton的监听事件");  }

});

方式2:通过XML文件设置

<ImageButtonandroid:id="@+id/imgBtn02"        android:src="@drawable/back_48"

android:layout_width="wrap_content"     android:layout_height="wrap_content"

android:onClick="ImageButtonXml"/>

、ToggleButton
开关按钮

ToggleButton,一个开关按钮,有两个状态,可以通过两个属性显示不同状态时,控件内显示文字的内容不同,属性如下:

android:textOff/setTextOff(CharSequence):设置关闭时显示的文本内容。

android:textOn/setTextOn(CharSequence):设置打开时显示的文本内容。

android:textOn="男"

android:textOff="女"

android:onClick="test"

publicvoid test(View view){

ToggleButtonbutton = (ToggleButton)view;

Toast.makeText(this,button.getText(), 0).show();

}

、RadioButton(单选按钮)  RadioGroup(单选框)

RadioButton,为一个单选按钮,一般配合RadioGroup一起使用,在同一RadioGroup内,所有的RadioButton的选中状态为互斥,它们有且只有一个RadioButton被选中。

常用方法如下:

RadioGroup.check(intid);                            //将指定的RadioButton设置成选中状态。

(RadioButton)findViewById(radioGroup.getCheckedRadioButtonId());         //获取被选中的单选框。

RadioButton.getText();                                //获取单选框的值

获取点击RadioButton的信息

RadioGroup radioGroup = (RadioGroup)findViewById(R.id.radioGroup1);

radioGroup.setOnCheckedChangeListener(newOnCheckedChangeListener() {

public void onCheckedChanged(RadioGroup group, int checkedId) {

RadioButton button=(RadioButton) group.findViewById(checkedId);

Toast.makeText(getApplicationContext(), button.getText(),Toast.LENGTH_LONG).show();

//Toast.makeText(getApplicationContext(), (String)button.getTag(),1).show();

}

});

button类有两个重要属性:text和tag。前者是显示给用户看的,而后者tag是button的标签,是用户不可见的,作为编写程序时利用,用于数据存储与传输。

、CheckBox多选框

CheckBox是一个多选按钮,每个多选框都是独立的,所以也无需用一个组控件包裹起来。可以通过迭代所有多选框,然后根据其状态是否被选中再获取其值。

CheckBox 类常用方法:

CheckBox.setChecked(true);           //将CheckBox 设置成选中状态。

CheckBox.getText();                          //获取多选框的值

CheckBox.isChecked();                   //判断该选项是否被选中,如果选中返回true

CheckBox box1=(CheckBox)findViewById(R.id.checkBox1);

CheckBox box2=(CheckBox)findViewById(R.id.checkBox2);

CheckBox box3=(CheckBox)findViewById(R.id.checkBox3);

box1.setOnCheckedChangeListener(myListener);

box2.setOnCheckedChangeListener(myListener);

box3.setOnCheckedChangeListener(myListener);

private OnCheckedChangeListener  myListener = new OnCheckedChangeListener() {

public voidonCheckedChanged(CompoundButton arg0, boolean arg1) {

if(arg1) {

Toast.makeText(getApplicationContext(), arg0.getText()+"被选中了!",0).show();

}else {

Toast.makeText(getApplicationContext(), arg0.getText()+"被取消了!",0).show();

}

}

};

第19讲- UI组件之_Button、checkbox、radio的更多相关文章

  1. 第29讲 UI组件之 ListView与 BaseAdapter,SimpleAdapter

    第29讲 UI组件之 ListView与 BaseAdapter,SimpleAdapter 1.BaseAdapter BaseAdapter是Android应用程序中经常用到的基础数据适配器,它的 ...

  2. 第34讲 UI组件之 ProgressDialog和Message

    第34讲UI组件之 ProgressDialog和Message 1.进度对话框 ProgressDialog <1>简介 ProgressDialog是AlertDialog类的一个扩展 ...

  3. 第33讲 UI组件_进度条ProcessBar和消息队列处理器handler

    第33讲UI组件_进度条ProcessBar和消息队列处理器handler 1. 进度条ProcessBar 一个可视化的进度指示器,代表正在执行的耗时任务.可以为用户展示一个进度条,表示正在执行的任 ...

  4. 第32讲 UI组件之 时间日期控件DatePicker和TimePicker

    第32讲 UI组件之 时间日期控件DatePicker和TimePicker 在Android中,时间日期控件相对来说还是比较丰富的.其中, DatePicker用来实现日期输入设置,    Time ...

  5. 第31讲 UI组件之 Gallery画廊控件

    第31讲 UI组件之 Gallery画廊控件 1.Gallery的简介 Gallery(画廊)是一个锁定中心条目并且拥有水平滚动列表的视图,一般用来浏览图片,并且可以响应事件显示信息.Gallery只 ...

  6. 第30讲 UI组件之 GridView组件

    第30讲 UI组件之 GridView组件 1.网格布局组件GridView GridView是一个ViewGroup(布局控件),可使用表格的方式显示组件,可滚动的控件.一般用于显示多张图片,比如实 ...

  7. 第28讲 UI组件之 ListView和ArrayAdapter

    第28讲 UI组件之 ListView和ArrayAdapter 1. Adapter 适配器 Adapter是连接后端数据和前端显示的适配器接口,是数据和UI(View)之间一个重要的纽带.在常见的 ...

  8. 第27讲 UI组件之 ScrollView与底部动态添加数据

    第27讲 UI组件之 ScrollView与底部动态添加数据 1. ScrollView(滚动视图) ScrollView(滚动视图)是实现滚动的一个控件,只需要将需要滚动的控件添加到ScrollVi ...

  9. 第25讲 UI组件之 AlertDialog 的各种实现

    第25讲 UI组件之AlertDialog 的各种实现 对话框(Dialog)是程序运行中的弹出窗口,例如当用户要删除一个联系方式时,会弹出一个对话框. Android提供了多种对话框:警告对话框(A ...

随机推荐

  1. checkbox 与JS的应用

    JS是一种基于(面向)对象的语言.所有的东西都基本上是对象. 基于对象和面向对象概念上基本上没有什么区别. js没有类,它把类功能称为原型对象.是同一个概念.主要是因为js没有class关键字.类== ...

  2. 【蓝桥杯】PREV-5 错误票据

    题目链接:gpid=T28">http://lx.lanqiao.org/problem.page? gpid=T28   历届试题 错误票据   时间限制:1.0s   内存限制:2 ...

  3. gcc和g++编译c或者c++文件碰到的问题

    gcc和g++都是GNU(组织)的一个编译器.        误区一:gcc只能编译c代码,g++只能编译c++代码      两者都可以,但是请注意:      1.后缀为.c的,gcc把它当作是C ...

  4. C# 泛型多种参数类型与多重约束 示例

    C# 泛型多种参数类型与多重约束 示例 interface IMyInterface { } class Dictionary<TKey, TVal> where TKey : IComp ...

  5. Tomcat架构以及理解sever.xml

    Tomcat架构图 当用户在地址栏输入访问地址后,首先识别访问协议(假设为http),那么通过针对于http协议传输的Connector连接器,连接到tomcat的服务中,连接后开始检测Engine下 ...

  6. Mysql相关操作

    1. 如何更改系统环境变量PATH?vim /etc/profile  加入 PATH=$PATH:/usr/local/mysql/bin2. 默认mysql安装好后,并没有root密码,如何给ro ...

  7. 纯css实现幻灯片效果

    <!DOCTYPE html PUBLIC "-//W3C//DTD XHTML 1.0 Strict//EN" "http://www.w3.org/TR/xht ...

  8. javascript 闭包的理解

    1 需要明白概念: 执行环境 变量对象,活动对象 作用域,作用域链 闭包 垃圾处理机制 闭包陷阱

  9. Swift中的协议

    协议: 1.Swift协议用于定义多个类型应该遵守的规范 2.协议定义了一种规范, 不提供任何实现 3.协议统一了属性名, 方法, 下标, 但是协议并不提供任何实现 4.语法格式: [修饰符] pro ...

  10. JavaWeb学习笔记之Servlet(一)

    1. 引子: 当我们开始进入JavaWeb开发的学习时,我们就必须要和Servlet和HTTP这两个词进行打交道了,尤其是Servlet.即使到了后面使用JSP (我们知道JSP其本身就是一个Serv ...