---------------setting_item---------------

<?xml version="1.0" encoding="utf-8"?>            //下面的focusable和clickable是chekbox天生就有的属性,点击的优先级比组合控件高,所以吧组合控件设置了点击事件,就药吧checkbox的点击事件去掉    
/** * Created by lambo on 2018/4/15. * 自定义组合控件---多个控件组成,可以复用 */public class Setting_item extends RelativeLayout {CheckBox cb;    private TextView tv_subtile;    private TextView tv_title;    private String descoff;    private String descon;    private String title;    //带一个参数的构造方法,初始化布局文件的时候调用    public Setting_item(Context context) {        super(context);        initView(context);    }    private void initView(Context context) {        //吧布局文件转换成view        View.inflate(context, R.layout.setting_item, this);        cb=findViewById(R.id.ck_setting_item);        tv_subtile = findViewById(R.id.tv_setting_item_subtitle);        tv_title = findViewById(R.id.tv_settting_item_title);    }/*带两个参数的构造方法,布局文件使用的时候调用*/    public Setting_item(Context context, AttributeSet attrs) {        super(context, attrs);        initView(context);        //获取命名空间(http://schemas.android.com/apk/res-auto)下的属性title,descon,descoff,在attr.xml中给textview中扩展了属性        title = attrs.getAttributeValue("http://schemas.android.com/apk/res-auto","title");        descon = attrs.getAttributeValue("http://schemas.android.com/apk/res-auto","descon");        descoff = attrs.getAttributeValue("http://schemas.android.com/apk/res-auto","descoff");        tv_title.setText(title);    }    public Setting_item(Context context, AttributeSet attrs, int defStyleAttr) {        super(context, attrs, defStyleAttr);        initView(context);    }//检验组合控件是否选中    public Boolean isChecked(){        return cb.isChecked();    }    //设置组合控件    public void setChecked(Boolean isChecked){        if(isChecked){            setSubtile(descon);        }else {            setSubtile(descoff);        }        cb.setChecked(isChecked);    }    //设置组合控件自标题的方法    public void setSubtile(String  subtilte){tv_subtile.setText(subtilte);    }}

---------------------res/values/attr.xml-----------------添加属性

<?xml version="1.0" encoding="utf-8"?>    //给自定义的组合控件Setting_item扩展属性                                


更多相关文章

  1. Android学习笔记(24):进度条组件ProgressBar及其子类
  2. android.widget.ListView
  3. Spinner 改变字体,颜色等...
  4. android——api
  5. Android(安卓)Studio中常用设置与快捷键(私人珍藏,Eclipse转AS必看
  6. Android:Animator使用指南
  7. Android使用ethtool工具查询/设置以太网网卡状态
  8. 手把手教你使用MPAndroidChart实现柱状图,饼状图和线性图
  9. JAVA环境变量设置以及Android(安卓)adb环境变量设置

随机推荐

  1. Android给控件添加默认点击效果
  2. Android上oprofile使用说明
  3. Android(安卓)QQ皮肤制作 apk之间资源共
  4. Android上oprofile使用说明
  5. AnDroidDraw.apk的安装
  6. Android(安卓)开发性能优化简介
  7. Android的Message Pool是个什么鬼——源
  8. Android中读取电话本Contacts联系人的所
  9. ( 转)关于Android的nodpi,xhdpi,hdpi,mdp
  10. android TextView添加滚动条