1.在attr.xml中先定义好属性
<?xml version="1.0" encoding="utf-8"?> <resources> <declare-styleable name="MyVIew"> <attr name="src" format="integer" /> <attr name="delta" format="integer" /> </declare-styleable> </resources>
2.在main.xml中如何使用该定义好的属性
<?xml version="1.0" encoding="utf-8"?> <LinearLayout xmlns:Android="http://schemas.android.com/apk/res/android" xmlns:wen="http://schemas.android.com/apk/res/com.javaeye.googlers" android:orientation="vertical" android:layout_width="fill_parent" android:layout_height="fill_parent"> <com.javaeye.googlers.MyVIew android:layout_width="fill_parent" android:layout_height="wrap_content" wen:src="@raw/icon" wen:delta="6"/> </LinearLayout>
3.代码中的属性使用
TypedArray ta = context.obtainStyledAttributes(attrs,
R.styleable.MyVIew);
int n = ta.getIndexCount();
for(int i =0;i < n;i++){//循环得到自定义属性
int attr = ta.getIndex(i);
switch(attr){
case R.styleable.MyVIew_src:
int id = ta.getResourceId(
R.styleable.MyVIew_src, 0);
//得到自定义属性的ID后如何使用……
case R.styleable.MyVIew_delta:
int idelta = ta.getInteger(R.styleable.MyVIew_delta, 1);
//得到自定义属性的ID后如何使用……
default:
break;
}
ta.recycle();//回收,为以后再使用