Android自定义控件的使用
2010-05-31 02:34:00 来源:WEB开发网2、XML中引用自定义控件
在XML中加入自定义控件其实很简单。只需要在控件名字前加入包名即可。如下:
Java代码
1. < com.lg.base.view.RadioButton android:id="@id/isPayDepositTrue" [color=red]fsms:value="true"[/color]
2. android:layout_width="wrap_content" android:layout_height="wrap_content"
3. android:text="@string/yes" android:textSize="18sp" >
4. < /com.lg.base.view.RadioButton >
< com.lg.base.view.RadioButton android:id="@id/isPayDepositTrue" [color=red]fsms:value="true"[/color]
android:layout_width="wrap_content" android:layout_height="wrap_content"
android:text="@string/yes" android:textSize="18sp" >
< /com.lg.base.view.RadioButton >
同样,红色部分可以先不看,也不需要加入到代码中,这个时候加入会报错,请注意。
3、attrs.xml属性定义。
在我们的思想中,既然我在自定义控件中加入了一个新的属性,那么我就应该能够在xml中引用它,并对它赋初始值。我当初也是这样想的。可是却无从下手。就是这一点,折腾了我一个下午。
正解:res/values/attrs.xml中定义属性,在自定义控件中获取这个属性,然后跟自定义控件的属性相绑定。
attrs.xml如果没有,就新建一个。这里只存放自定义控件中需要的属性,在我看来,这个文件是一个中介,负责将layout/xx.xml里面的对这个变量的引用和自定义控件里面的属性绑定起来。
attrs.xml完整代码如下:
Java代码
1. < ?xml version="1.0" encoding="utf-8"? >
2. lt;resources >
3. < declare-styleable name="RadioButton" >< !-- 控件名称-- >
4. < attr name="value" format="string"/ >< !-- 属性名称,类型-- >
5. < /declare-styleable >
6. lt;/resources >
< ?xml version="1.0" encoding="utf-8"? >
< resources >
更多精彩
赞助商链接