Android(5)多选按钮CheckBox、OnClickListener、OnCheckedChangeListener
来源:互联网 发布:精子优化处理检查 编辑:程序博客网 时间:2024/05/16 16:04
public class MainActivity extends ActionBarActivity { private CheckBox eatBox; private CheckBox sleepBox; private CheckBox shopBox; private CheckBox all; private LinearLayout mCheckedLayout; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); eatBox = (CheckBox)findViewById(R.id.eat); sleepBox = (CheckBox)findViewById(R.id.sleep); shopBox = (CheckBox)findViewById(R.id.shop); all = (CheckBox)findViewById(R.id.all); mCheckedLayout = (LinearLayout)findViewById(R.id.checked);// BoxClickListener listener = new BoxClickListener(); clickBoxCheckListener listener = new clickBoxCheckListener(); eatBox.setOnCheckedChangeListener(listener); sleepBox.setOnCheckedChangeListener(listener); shopBox.setOnCheckedChangeListener(listener); all.setOnCheckedChangeListener(listener); } class clickBoxCheckListener implements OnCheckedChangeListener{ @Override public void onCheckedChanged(CompoundButton buttonView,boolean isChecked) { if(buttonView.getId() == R.id.eat){ System.out.println("eat"); }else if(buttonView.getId() == R.id.sleep){ System.out.println("sleep"); }else if(buttonView.getId() == R.id.shop){ System.out.println("shop"); }else if(buttonView.getId() == R.id.all){ } if(isChecked == true && buttonView.getId() == R.id.all){ for(int i = 0;i < mCheckedLayout.getChildCount();i++){ CheckBox cb = (CheckBox)mCheckedLayout.getChildAt(i); cb.setChecked(true); } }else if(isChecked == false && buttonView.getId() == R.id.all){ for(int i = 0;i < mCheckedLayout.getChildCount();i++){ CheckBox cb = (CheckBox)mCheckedLayout.getChildAt(i); cb.setChecked(false); } System.out.println("enchecked"); } } }// class BoxClickListener implements android.view.View.OnClickListener{//// @Override// public void onClick(View v) {// CheckBox cb = (CheckBox)v;// if(cb.getId() == R.id.eat){// System.out.println("eat");// }else if(cb.getId() == R.id.sleep){// System.out.println("sleep");// }else if(cb.getId() == R.id.shop){// System.out.println("shop");// }// if(cb.isChecked()){// System.out.println("checked");// }else{// System.out.println("unchecked");// }// }// }}
OnClickListener将View向下转型,通过ID判断是哪个CheckBox,OnClickListener只要勾选框有变化就会触发,无论是选中还是取消选中。
OnCheckedChangeListener,CompoundButton 即当前多选框的选项,当勾选的状态发生改变该方法才会被触发。
0 0
- Android(5)多选按钮CheckBox、OnClickListener、OnCheckedChangeListener
- CheckBox多选按钮实现CompoundButton.OnCheckedChangeListener
- CheckBox的OnCheckedChangeListener、OnClickListener、OnTouchListener
- CheckBox的OnCheckedChangeListener、OnClickListener、OnTouchListener
- CheckBox的OnCheckedChangeListener、OnClickListener、OnTouchListener
- CheckBox OnTouchListener、OnCheckedChangeListener和OnClickListener区别
- Android CheckBox 多选按钮
- Android CheckBox的OnCheckedChangeListener监听传值
- RadioButton单选按钮实现RadioGroup.OnCheckedChangeListener
- android多选按钮(CheckBox)
- CheckBox 's OnCheckedChangeListener
- Android之多选按钮CheckBox
- Android入门(5)——多状态按钮ToggleButton、多选按钮CheckBox、RadioGroup与RadioButtont按钮
- Android页面中按钮OnClickListener的设置
- CheckBox的OnCheckedChangeListener的调用
- CheckBox控件的 OnCheckedChangeListener方法
- 从零开始学android<CheckBox多选按钮的使用.八.>
- 玩转Android---UI篇---CheckBox(多选按钮)
- ZigZag Conversion
- 整数的拆分
- springMVC配置一个通配的url请求,替代@RequestMapping中指定的方式
- fs4412开发板学习笔记(十)
- Java异常捕获之try...catch...finally语句
- Android(5)多选按钮CheckBox、OnClickListener、OnCheckedChangeListener
- fs4412开发板学习笔记(十一)
- Warning: Attempt to present ControllerA and ControllerB whose view is not in the window hierarchy!
- 修改mysql数据库编码格式以支持中文
- Node.js in practice 笔记
- fs4412开发板学习笔记(十二)
- 数据结构学习(一)字符串截取的C语言实现
- 2014找工作总结-机会往往留给有准备的人
- 51nod 1256 乘法逆元 (模板)