checkBox是否选中,决定SettingItemView是否开启。
首先创建一个方法用于判断checkbox是否开启
Java代码
- /**
- * 判断是否开启的方法
- *
- * @return 返回当前SettingItemView是否选中状态 true开启(checkBox返回true)
- * false关闭(checkBox返回true)
- */
- public boolean isCheck() {
- return cb_box.isChecked();
- }
根据开启的变量来控制控件显示文字
Java代码
- /**
- * @param isCheck 是否作为开启的变量,由点击过程中去做传递
- */
- ublic void setCheck(boolean isCheck) {
- //当前条目在选择的过程中,cb_box选中状态也在跟随(isCheck)变化
- cb_box.setChecked(isCheck());
- if(isCheck) {
- tv_des.setText("自动更新已开启");
- } else {
- tv_des.setText("自动更新已关闭");
- }
接着添加条目点击事件:
Java代码
- package com.wuyudong.mobilesafe.activity;
- import com.wuyudong.mobilesafe.R;
- import com.wuyudong.mobilesafe.view.SettingItemView;
- import android.app.Activity;
- import android.os.Bundle;
- import android.view.View;
- import android.view.View.OnClickListener;
- public class SettingActivity extends Activity {
- @Override
- protected void onCreate(Bundle savedInstanceState) {
- super.onCreate(savedInstanceState);
- setContentView(R.layout.activity_setting);
- initUpdate();
- }
- private void initUpdate() {
- final SettingItemView siv_update = (SettingItemView)findViewById(R.id.siv_update);
- siv_update.setOnClickListener(new OnClickListener() {
- @Override
- public void onClick(View v) {
- //如果之前是选中的,点击过后,变成未选中
- //如果之前是未选中的,点击过后,变成选中
- //获取之前的选中状态
- boolean check = siv_update.isCheck();
- //将原有状态取反,等同上诉的两部操作
- siv_update.setCheck(!check);
- }
- });
- }
- }
这样当条目点击的时候,自定义控件中包含的相应的checkbox状态也相应发生改变。
本文发布:Android开发网
发表评论:
◎欢迎参与讨论,请在这里发表您的看法、交流您的观点。