以XML格式定义的动画无法启动

时间:2013-10-20 22:11:03

标签: android android-animation android-xml

我在Android中找到了标准进度微调器的png。但是,当我尝试以与android如何使用以下代码类似的方式为它们设置动画时,没有任何反应。它们似乎只是一个静态的图标。

按钮

<Button
    android:layout_width="match_parent"
    android:layout_height="100dp"
    android:background="@anim/anim"
    android:drawableRight="@anim/anim" >
</Button>

动画

<?xml version="1.0" encoding="utf-8"?>
<layer-list xmlns:android="http://schemas.android.com/apk/res/android">
    <item>
        <rotate
             android:drawable="@drawable/spinner_76_outer_holo" 
             android:pivotX="50%"
             android:pivotY="50%"
             android:fromDegrees="0"
             android:toDegrees="1080" />
    </item>
    <item>
        <rotate
             android:drawable="@drawable/spinner_76_inner_holo"
             android:pivotX="50%"
             android:pivotY="50%"
             android:fromDegrees="720"
             android:toDegrees="0" />
    </item>
</layer-list>

是否可以自动启动仅以XML定义的动画或者是否必须使用java启动动画?

1 个答案:

答案 0 :(得分:1)

您可以使用animated-rotate,但这只适用于API 11+。如果您使用rotate,那么您必须在Java中启动它们,并通过设置drawable.setLevel()0之间的级别(10000)设置动画来制作动画(听起来很奇怪?它是,但它是如何完成的)。