Android 自定义属性(Attribute)详解

本文详细解析Android自定义属性的定义与使用,包括如何在attrs.xml中定义属性资源,创建自定义ImageView类并利用定义的属性实现图片显示的透明动画效果。通过自定义属性,可以更灵活地控制View组件的外观和行为。
摘要由CSDN通过智能技术生成

前言

Android本身给我们提供了很多的属性,像我们经常要用到的:android:layout_width="match_parent"、android:layout_height="match_parent"等等……

但是有时候,我们需要用到自定义的View,自定义View可以在代码中使用,也可以在XML界面布局中使用,那么我们就可以给我们的自定义View增加只属于它自己的属性,通过这些属性可以使我们更好的控制View组件的外观以及行为。这一篇主要讲解下自定义属性的运用。

定义属性(Attribute)资源

属性资源文件放在/res/values目录下,文件名字是:attrs.xml,由于IDE创建时没有帮我们自动生成这个文件,所以我们需要自己创建attrs.xml文件。attrs.xml文件的根元素是<resources../>元素,该元素下包含了如下两个子元素:
* attr子元素:定义一个属性。
* declare-styleable子元素:定义一个styleable对象,每个对象都是一组attr属性的集合。
下面以一个自定义默认带动画的图片来演示下自定义属性的运用。

实例

定义XML属性资源

<?xml version="1.0" encoding="utf-8"?>
<resources>
    <attr name="duration"/>

    <declare-styleable name="AlphaImageView">
        <attr name="duration"/>
    </declare-styleable>

</resources>

上面的属性资源文件中,定义了一个duration的属性,定义了这个属性之后,这个属性到底在哪里使用就不归属性资源文件管了,属性资源文件中的属性到底可以发挥什么作用,完全由自定义View中的代码实现。

注意:在属性资源文件中定义<declare-styleable.../>元素时,可以在其内部直接使用<attr...

评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

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

抵扣说明:

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

余额充值