android5.0StateListAnimator

来源:互联网 发布:帝国cms标签工具 编辑:程序博客网 时间:2024/06/02 18:44

android5.0StateListAnimator

先看效果图

这里写图片描述

StateListAnimator有xml实现和代码实现,和其他属性动画差不多,实现还是比较简单的。

1.xml实现(xml文件可以放在drawable目录(不能自动提示),也可以放在animator目录中(建议))

<selector xmlns:android="http://schemas.android.com/apk/res/android">    <item android:state_pressed="true">        <set>            <objectAnimator android:duration="500" android:propertyName="rotationX" android:valueTo="360" android:valueType="floatType" />        </set>    </item>    <item android:state_pressed="false">        <set>            <objectAnimator android:duration="500" android:propertyName="rotationX" android:valueTo="0" android:valueType="floatType" />        </set>    </item></selector>

指定控件使用该属性

android:stateListAnimator="@animator/statelistanimator"或android:stateListAnimator="@drawable/statelistanimator"

如下:

<!--或者 android:stateListAnimator="@drawable/statelistanimator"--> <Button        android:id="@+id/btn"        android:layout_width="200dp"        android:layout_height="100dp"        android:background="@android:color/holo_red_dark"        android:gravity="center_horizontal"        android:stateListAnimator="@animator/statelistanimator"        android:text="Hello World!" />

2.代码实现

Button button = (Button) findViewById(R.id.btn);StateListAnimator animator = AnimatorInflater.loadStateListAnimator(this, R.animator.statelistanimator);//StateListAnimator animator = AnimatorInflater.loadStateListAnimator(this, R.drawable.state);button.setStateListAnimator(animator);
0 0
原创粉丝点击