是否可以以编程方式从xml文件中定义的StateListAnimator加载指定的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>
答案 0 :(得分:0)
但是......,您可以从xml加载Animator
,然后调用StateListAnimator#addState(int[] specs, Animator animator)