【发布时间】:2013-07-25 09:54:04
【问题描述】:
我在 layer-list 中有两个可旋转的可绘制对象,我正在尝试将它们都设置为按钮上的 drawableleft 动画。我正在显示可绘制对象,但没有动画。
这是我在 xml (button_progress_bar_small.xml) 中的可绘制布局:
<layer-list xmlns:android="http://schemas.android.com/apk/res/android">
<item>
<rotate
android:drawable="@drawable/ic_spinner_small_outer"
android:pivotX="50%"
android:pivotY="50%"
android:fromDegrees="0"
android:toDegrees="1080" />
</item>
<item>
<rotate
android:drawable="@drawable/ic_spinner_small_inner"
android:pivotX="50%"
android:pivotY="50%"
android:fromDegrees="720"
android:toDegrees="0" />
</item>
这是我正在运行的代码:
button.setCompoundDrawablesWithIntrinsicBounds(R.drawable.button_progress_bar_small, 0, 0, 0);
LayerDrawable progressAnimationLeft = (LayerDrawable) button.getCompoundDrawables()[0];
((RotateDrawable) progressAnimationLeft.getDrawable(0)).setLevel(500);
((RotateDrawable) progressAnimationLeft.getDrawable(1)).setLevel(500);
我不确定启动动画的触发器是什么,或者我是否应该在每个RotateDrawable 上执行某些操作(与LayerDrawable 上的一个操作相反)才能做到这一点。
【问题讨论】:
标签: android android-animation android-drawable