第19讲- UI组件之_Button、checkbox、radio
第19讲 UI组件之_Button、checkbox、radio
四、按钮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的更多相关文章
- 第29讲 UI组件之 ListView与 BaseAdapter,SimpleAdapter
第29讲 UI组件之 ListView与 BaseAdapter,SimpleAdapter 1.BaseAdapter BaseAdapter是Android应用程序中经常用到的基础数据适配器,它的 ...
- 第34讲 UI组件之 ProgressDialog和Message
第34讲UI组件之 ProgressDialog和Message 1.进度对话框 ProgressDialog <1>简介 ProgressDialog是AlertDialog类的一个扩展 ...
- 第33讲 UI组件_进度条ProcessBar和消息队列处理器handler
第33讲UI组件_进度条ProcessBar和消息队列处理器handler 1. 进度条ProcessBar 一个可视化的进度指示器,代表正在执行的耗时任务.可以为用户展示一个进度条,表示正在执行的任 ...
- 第32讲 UI组件之 时间日期控件DatePicker和TimePicker
第32讲 UI组件之 时间日期控件DatePicker和TimePicker 在Android中,时间日期控件相对来说还是比较丰富的.其中, DatePicker用来实现日期输入设置, Time ...
- 第31讲 UI组件之 Gallery画廊控件
第31讲 UI组件之 Gallery画廊控件 1.Gallery的简介 Gallery(画廊)是一个锁定中心条目并且拥有水平滚动列表的视图,一般用来浏览图片,并且可以响应事件显示信息.Gallery只 ...
- 第30讲 UI组件之 GridView组件
第30讲 UI组件之 GridView组件 1.网格布局组件GridView GridView是一个ViewGroup(布局控件),可使用表格的方式显示组件,可滚动的控件.一般用于显示多张图片,比如实 ...
- 第28讲 UI组件之 ListView和ArrayAdapter
第28讲 UI组件之 ListView和ArrayAdapter 1. Adapter 适配器 Adapter是连接后端数据和前端显示的适配器接口,是数据和UI(View)之间一个重要的纽带.在常见的 ...
- 第27讲 UI组件之 ScrollView与底部动态添加数据
第27讲 UI组件之 ScrollView与底部动态添加数据 1. ScrollView(滚动视图) ScrollView(滚动视图)是实现滚动的一个控件,只需要将需要滚动的控件添加到ScrollVi ...
- 第25讲 UI组件之 AlertDialog 的各种实现
第25讲 UI组件之AlertDialog 的各种实现 对话框(Dialog)是程序运行中的弹出窗口,例如当用户要删除一个联系方式时,会弹出一个对话框. Android提供了多种对话框:警告对话框(A ...
随机推荐
- 通过代码设置radiobutton不同方位图标的两种方法
更换radiobutton中的图片在xml中很好设置,但对于初学者如何在代码中设置还是不容易找的.没法子,通过看原版api找到两个方法,setCompoundDrawables和setCompound ...
- Android中设置文本颜色的三种方法
最近刚开始学web,发现好的颜色搭配可以让自己的网页更加美观, 中午不想做事,就无聊滴花了两个小时测试了所有颜色的编码,总结如下 新手没有什么吊炸天的技术,仅仅是一份辅助的文档,有兴趣的朋友可以收藏下 ...
- Linux下编译安装Apache及模块
Apache是时下最流行的Webserver软件之中的一个,支持多平台,可高速搭建web服务,并且稳定可靠.并可通过简单的API扩充.就能够集成PHP/Python等语言解释器. 文章这里解说怎样在l ...
- [置顶] SQL注入问题
我们做系统,有没有想过,自己的容量很大的一个数据库就被很轻易的进入,并删除,是不是很恐怖的一件事.这就是sql注入. 一.SQL注入的概念 SQL注入攻击指的是通过构建特殊的输入作为参 ...
- 经常使用的自己定义UI组件- 一:TimeView
近期做蛋疼的机顶盒项目,以后遇到哪些经常使用的组件,记录于此. 反编译 youku视频TV偷来的..也希望各位童鞋多学习别人的代码,为己所用. 当然还有其它的办法,比方监听系统发出的广播等等.等 ...
- Vss服务端用户存在,但客户端登陆不进去
打开客户端Vss提示“Cannot find SS.INI file for user userName”,这个错误是找不到用户userName的SS.INI文件. 解决办法 在服务器上找到Vss共享 ...
- HID class request.
1.get report. 2.set report report request. Get report范例: 下面这张图是Host跟Device来要设备描述符. USB主机向设备控制器请求数据时, ...
- JavaScript随机排序算法1
1.对数组循环,每一项与随机的某一项位置调换 <ul id="listOne"></ul> <div id="tempOne"&g ...
- MongoDB在win7下安装配置
1.在MongoDB官网下载最新版本,并且安装 2.解压后在MongoDB文件目录下创建data文件夹和log文件夹,并且在log文件夹中新建mongodb.log文件 3.新建一个配置文件mongo ...
- symfony 从request中获取当前登陆用户
$usernameToken = unserialize($request->getSession()->get('_security_main')); $user = $username ...