天天看点

Android 自定义 declare-styleable 的format

类型描述            

​字段名称           

定义方式举例            

调用方式举例            

资源ID

reference

颜色

color

布尔值

boolean

尺寸值

dimension

浮点值

float

整数型

integer

字符串

string

百分比

fraction

枚举类型

enum

位或运算

flag

附加:自定义xml属性步骤

declare-styleable:自定义属性块标识

accItem:自定义属性块的名称,在代码获取xml属性的时候会使用到

<attr>:一项自定义属性的标识块,其中name为属性名称,format为属性格式,参考起始表

    在xml定义xmlns,举例示意:     

代码第二行即为我们自定义的xmlns,有三点需要注意:1、xmlns为定义xmlns标识,不可改变;2、app(xmlns:app)为引用标识,用户可自行改变,使用xml布局时,使用该标识可指定属性,如“app.acctitle =

"demo"”;3、package是可变参数,必须于工程项目的包名相同,即"AndroidManifest.xml"中的package     

   布局文件中使用自定义控件的时候,和嵌入普通布局一样,引用属性时,使用上一步定义的xmlns加第一步时定义的attr->name直接使用。举例说明:

第一行:R.styleable.accItem,其中accItem为在资源文件中定义的declare-styleable代码块的name属性使用TypedArray 获取自定义属性

第二行:R.styleable.accItem_accleftimg,其中accItem_accleftimg为[declare-styleable][name]->[attr][name]属性

第三行:执行完毕后,需要调用recycle来释放元素

继续阅读