CheckBox的OnCheckedChangeListener、OnClickListener、OnTouchListener
来源:互联网 发布:python sha.new 编辑:程序博客网 时间:2024/06/05 23:58
看到CheckBox这一章的内容,发现监听CheckBox的事件有很多,OnCheckedChangeListener、OnClickListener、OnTouchListener。
于是写代码为了测试他们的区别。
- package com.xc.ex04_04;
- import android.app.Activity;
- import android.os.Bundle;
- import android.view.MotionEvent;
- import android.view.View;
- import android.widget.Button;
- import android.widget.CheckBox;
- import android.widget.CompoundButton;
- import android.widget.TextView;
- public class EX04_04 extends Activity {
- public TextView tv1;
- public TextView tv2;
- public CheckBox cb;
- public Button b;
- /** Called when the activity is first created. */
- @Override
- public void onCreate(Bundle savedInstanceState) {
- super.onCreate(savedInstanceState);
- setContentView(R.layout.main);
- tv1 = (TextView)findViewById(R.id.tv1);
- tv2 = (TextView)findViewById(R.id.tv2);
- cb = (CheckBox)findViewById(R.id.cb);
- b = (Button)findViewById(R.id.b);
- cb.setChecked(false);
- b.setEnabled(false);
- cb.setOnCheckedChangeListener(new CheckBox.OnCheckedChangeListener() {
- @Override
- public void onCheckedChanged(CompoundButton buttonView, boolean isChecked) {
- // TODO Auto-generated method stub
- if(cb.isChecked()){
- b.setEnabled(true);
- tv2.setText("");
- System.out.println(33);
- }
- else{
- b.setEnabled(false);
- tv1.setText("");
- tv2.setText("");
- System.out.println(44);
- }
- }
- });
- cb.setOnClickListener(new CheckBox.OnClickListener() {
- @Override
- public void onClick(View v) {
- // TODO Auto-generated method stub
- if(cb.isChecked()){
- b.setEnabled(true);
- tv2.setText("");
- System.out.println(11);
- }
- else{
- b.setEnabled(false);
- tv1.setText("");
- tv2.setText("");
- System.out.println(22);
- }
- }
- });
- /*开始我测试这种方法不知道怎么没效果,原来是要用鼠标按压CheckBox按钮才会看到效果*/
- cb.setOnTouchListener(new CheckBox.OnTouchListener() {
- @Override
- public boolean onTouch(View v, MotionEvent event) {
- // TODO Auto-generated method stub
- if(cb.isChecked()){
- System.out.println(55);
- }
- else{
- System.out.println(66);
- }
- return false;
- }
- });
- b.setOnClickListener(new Button.OnClickListener() {
- @Override
- public void onClick(View v) {
- // TODO Auto-generated method stub
- if(cb.isChecked()){
- tv1.setText("你已经同意了");
- }
- else{
- }
- }
- });
- }
- }
首先模拟器状态为,
点击我同意以后,打印的内容为
说明OnTouchListener是在CheckBox点击之前获得的内容,然后执行点击CheckBox之后的内容,执行OnCheckedChangeListener,再是OnClickListener。
- CheckBox的OnCheckedChangeListener、OnClickListener、OnTouchListener
- CheckBox的OnCheckedChangeListener、OnClickListener、OnTouchListener
- CheckBox的OnCheckedChangeListener、OnClickListener、OnTouchListener
- CheckBox OnTouchListener、OnCheckedChangeListener和OnClickListener区别
- Android(5)多选按钮CheckBox、OnClickListener、OnCheckedChangeListener
- CheckBox的OnCheckedChangeListener的调用
- CheckBox控件的 OnCheckedChangeListener方法
- ListView的OnTouchListener和OnClickListener的研究
- onTouchListener和onClickListener的冲突问题
- 浅谈OnTouchListener,OnClickListener和OnLongClickListener的关系
- ontouchEvent,ontouchListener,onclickListener的执行顺序
- radiobutton 的OnClickListener和OnCheckedChangeListener的响应事件分析
- 避免checkBox 的setCheced() 触发 onCheckedChangeListener()
- Android CheckBox的OnCheckedChangeListener监听传值
- OnTouchListener、OnClickListener、OnLongClickListener
- OnTouchListener和OnClickListener
- 论onclicklistener、ontouchlistener、ontouchevent
- OnTouchListener会覆盖OnClickListener
- SMRAM
- java wsdl反向生成源码,并使用CXF实现客户端调用代码
- 整数移位
- NSDate 北京时间
- 算法时间复杂度分析
- CheckBox的OnCheckedChangeListener、OnClickListener、OnTouchListener
- log4j处理tomcat日志
- CentOS无线网络配置
- android 笨鸟到菜鸟学习进阶篇,不错学习一下
- VC得到选择的文件夹的路径
- 变长参数函数(转载)
- 菜鸟收藏:不为人知的Word段间距设置
- EL表达式获取list大小
- hql分页( HibernateCallback接口 )