Android的selector大家应该都知道,可以为正常和按下时的图片,设置不同的图片
除此之外,我们还可以更进一步,在不同状态之间切换时,显示动画,让画面更具动感
我们通过selector和android:stateListAnimator属性,即可实现此功能
<ImageView
android:clickable="true"
android:stateListAnimator="@drawable/anim_state_list_m01" />
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item android:state_pressed="true">
<set>
<objectAnimator android:duration="300" android:propertyName="scaleX" android:valueTo="1.025" />
<objectAnimator android:duration="300" android:propertyName="scaleY" android:valueTo="1.025" />
<objectAnimator android:duration="300" android:propertyName="translationZ" android:valueTo="4dp" />
</set>
</item>
<item>
<set>
<objectAnimator android:duration="300" android:propertyName="scaleX" android:valueTo="1.0" />
<objectAnimator android:duration="300" android:propertyName="scaleY" android:valueTo="1.0" />
<objectAnimator android:duration="300" android:propertyName="translationZ" android:valueTo="0dp" />
</set>
</item>
</selector>