Android 自定义控件

在Android中自定义控件分为9个步骤:

1、创建一个自定义的组合控件,例如:SettingView  继承一个布局文件 RelativeLayout 或者LinearLayout或ViewGroup

2、实现构造方法 在构造方法中设置要显示的内容

View.inflate(context,R.layout.test,this);

3、添加自定义属性  直接添加时会报错的 itheima:title="标题"

4、声明命名控件

xmlns:zkteco="http://schemas.android.com/apk/res/<应用程序包名>"

5、声明自定义属性

在valuse文件夹中创建attrs.xml

例如:

<?xml version="1.0" encoding="utf-8"?>
<resources>
    <declare-styleable name="SettingView">
        <attr name="title" format="string" /> //代表是类型为string
        <attr name="desc_on" format="string" />
        <attr name="desc_off" format="string" />
    </declare-styleable>
</resources>

6、观察 .R文件中的styleable类中的数组SettingView

7、回到自定义组合控件的Java代码中,在两个参数的构造方法里面:

TypedArray a = context.obtainStyledAttributes(attrs, R.styleable.SettingView);

讲自定义的属性和attrs的集合建立一种对应关系

a.getString(0);    获取attrs数组中第0个元素值

a.getString(1);    获取attrs数组中第1个元素值

例如:

String title = a.getString(R.styleable.SettingView_title);
desc_on = a.getString(R.styleable.SettingView_desc_on);
desc_off = a.getString(R.styleable.SettingView_desc_off);

8、用完a a.recycle()释放资源

9、扩展自定义控件的一些方法。设置标题 设置内容  设置相应的点击事件。





你可能感兴趣的:(自定义控件)