自定义组合控件可以实现布局的复用。可以将相同的组合布局写成一个自己的控件。方便自己在布局文件中使用
首先建立一个类。继承一个布局,比如RelativeLayout
然后在系统调用的构造方法里面初始化控件。
初始化控件:
首先用inflate填充生成一个View。然后增加View的控件,最后使用Viewgrouo的addView的方法添加View。
在布局文件中写上上面那个类的全路径就ok了。
现在就可以运行了。
那么如何改变控件的属性呢?
总之不能在初始化控件后直接把属性给写死。因为我们需要复用,写死就无法服用了。
可以在使用我们这个自定义组合空间的时候给自定义组合空间赋值。
这就需要自己创建一个可以在布局文件中定义属性的功能了。
步骤一,在values文件夹下新建一个名为attrs。xml的resource文件。
步骤二,
参考以下attrs。xml的格式。首先有一个resources根节点。在后面定义一个 <declare-styleable name="item">。然后定义属性。
<?xml version="1.0" encoding="utf-8"?>
<resources>
<declare-styleable name="item">
<attr name="title" format="string" />
</declare-styleable>
</resources>
步骤三。定义完成后在使用自定义组合控件的时候就可以使用了
在使用前加上命名空间。
命名空间可以随便写,但是最好使用以下规范:
xmlns:item="http://schemas.android.com/apk/res/包名"
item:title=”似懂非懂是“
定义完成后使用构造函数中的AttributeSet就可以获取刚刚输入的属性了
4807



被折叠的 条评论
为什么被折叠?



