Android 自定义控件属性

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();//回收,为以后再使用

 

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值