是否有可能以編程方式從xml文件中定義的StateListAnimator加載指定的動畫師類,以便我可以以編程方式向其添加偵聽器?如何以編程方式從StateListAnimator xml文件加載指定的Animator?
我知道我們可以用簡單的Animator xml文件來做到這一點,但不能代表任何代表StateListAnimator的xml。我曾嘗試將ID應用於xml的animator類,但似乎我們無法將任何ID應用於它。
下面是我的代碼,從xml和xml文件的內容加載狀態列表動畫。
在此先感謝!
在API級別21或以上:
AnimatorInflater.loadStateListAnimator(
getContext(), R.animator.state_list_animator);
下面是我的state_list_animator XML:
<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item android:state_selected="false">
<set>
<objectAnimator android:duration="@android:integer/config_shortAnimTime"
android:propertyName="rotation"
android:valueTo="0f"
android:valueType="floatType"
/>
</set>
</item>
<item android:state_selected="true">
<set>
<objectAnimator
android:duration="@android:integer/config_shortAnimTime"
android:propertyName="rotation"
android:valueTo="180f"
android:valueType="floatType"/>
</set>
</item>
</selector>
不,你不能那樣做 – pskink
oh ..所以我所能做的只是在Activity/Fragment上定義和編寫所有這些動畫代碼然後...;( – shaunkawano
但是...,你可以從xml加載Animator,然後調用addState( int [] specs,Animator animator)' – pskink