自定义控件-属性自定义
1.xml中增加 xmlns:app="http://schemas.android.com/apk/res/包名"
2.res/value下attrs增加借点
<declare-styleable name="TestAttr">
<attr name="name" format="reference" />
<attr name="age">
<flag name="child" value="10" />
<flag name="young" value="18" />
<flag name="oldman" value="60" />
</attr>
<attr name="textSize" format="dimension" />
</declare-styleable>
format还可以指定其他的类型比如;
reference 表示引用,参考某一资源ID
string 表示字符串
color 表示颜色值
dimension 表示尺寸值
boolean 表示布尔值
integer 表示整型值
float 表示浮点值
fraction 表示百分数
enum 表示枚举值
flag 表示位运算
3.在自定义view的代码中引入自定义属性,修改构造函数
TypedArray a = context.obtainStyledAttributes(attrs,R.styleable.MyView);
调用结束后务必调用recycle()方法,否则这次的设定会对下次的使用造成影响
defStyle 指的是xml中定义的style节点
4.引入自定义布局
View.inflate(context, R.layout.custom_lay, this);