菜鸟的安卓实习之路---自定义控件的属性

在使用的第三方控件下拉刷新的时候,发现有这几行代码:

ptr:ptrAnimationStyle="flip" ptr:ptrHeaderBackground="#ffffff" ptr:ptrHeaderSubTextColor="#666666" ptr:ptrHeaderTextColor="#666666"


开始也没搞清楚是怎么回事, 然后发现该控件源码value 文件夹下的attri.xml文件加下定义了这一属性,



定义一个属性,需要制定他的属性名和他的参数格式 这里用一个toolbar 看下注意事项

让我们再来看看布局xml中需要注意的事项。
首先得声明一下:xmlns:toolbar=http://schemas.android.com/apk/res/cn.zzm.toolbar
注意,“toolbar”可以换成其他的任何名字,后面的url地址必须最后一部分必须用上自定义组件的包名。自定义属性了,在属性名前加上“toolbar”即可。

最后来看看java代码中的注意事项。
在自定义组件的构造函数中,用
TypedArray a = context.obtainStyledAttributes(attrs,R.styleable.ToolBar);
来获得对属性集的引用,然后就可以用“a”的各种方法来获取相应的属性值了。这里需要注意的是,如果使用的方法和获取值的类型不对的话,则会返回默认值。因此,如果一个属性是带两个及以上不用类型的属性,需要做多次判断,知道读取完毕后才能判断应该赋予何值。当然,在取完值的时候别忘了回收资源哦!

【菜鸟的安卓实习之路---自定义控件的属性】

    推荐阅读