【发布时间】:2016-07-19 19:09:19
【问题描述】:
我正在尝试实现此处找到的动画。
Android 3d animation like Google Now Launcher Menu Animation
但是,我似乎无法使用 objectAnimator,因为我正在使用支持库片段。当我尝试使用上述链接中的代码时,我收到一条错误消息,指出 Unknown animation: objectAnimator.
如何在添加/删除片段的同时仍然使用片段支持库来完成这样的动画?
更新
根据下面 DeeV 的回答,我已经更新了其余部分的 XML 动画。
gla_back_come.xml
<set xmlns:android="http://schemas.android.com/apk/res/android" android:duration="500">
<alpha
android:fromAlpha="1.0"
android:toAlpha="0.0" />
<scale
android:fromXScale="1"
android:toXScale="0"
android:fromYScale="1"
android:toYScale="0"
android:pivotX="50%"
android:pivotY="50%"
android:interpolator="@android:anim/accelerate_decelerate_interpolator" />
</set>
gla_back_gone.xml
<set xmlns:android="http://schemas.android.com/apk/res/android" android:duration="500" >
<alpha
android:fromAlpha="0.0"
android:toAlpha="1.0" />
<scale
android:fromXScale="12.0"
android:toXScale="1.0"
android:fromYScale="12.0"
android:toYScale="1.0"
android:pivotX="50%"
android:pivotY="50%"
android:interpolator="@android:anim/accelerate_decelerate_interpolator"/>
</set>
gla_there_come.xml
<set xmlns:android="http://schemas.android.com/apk/res/android" android:duration="500">
<alpha
android:fromAlpha="0.0"
android:toAlpha="1.0" />
<scale
android:fromXScale="0.0"
android:toXScale="1.0"
android:fromYScale="0.0"
android:toYScale="1.0"
android:pivotX="50%"
android:pivotY="50%"
android:interpolator="@android:anim/accelerate_decelerate_interpolator"/>
</set>
gla_there_gone.xml
<set xmlns:android="http://schemas.android.com/apk/res/android" android:duration="500" >
<alpha
android:fromAlpha="1.0"
android:toAlpha="0.0"/>
<scale
android:fromXScale="1.0"
android:toXScale="12.0"
android:fromYScale="1.0"
android:toYScale="12.0"
android:pivotX="50%"
android:pivotY="50%"
android:interpolator="@android:anim/accelerate_decelerate_interpolator"/>
</set>
【问题讨论】:
-
我已经有一段时间没有使用基本动画了,但我认为插值器需要从“@android:anim/”文件夹中获取,并且它们都使用“_interpolator”进行后置修复”。它们本质上是相同的东西,但它们可能不存在于年轻设备的“@android:interpolator/”位置。我用
accelarate_decelerate_interpolator编辑了我的答案。 -
@DeeV - 谢谢!我将更新我上面的 XML 以匹配。
-
@DeeV - 你能检查我更新的 gla_back_gone 和 gla_back_come 动画的 XML 吗?他们似乎没有像视频示例那样做。我想我可能有问题
-
我还没有验证动画是如何工作的。假设您发布的答案中的动画是正确的。我只是说你如何使用带有支持片段的动画。
-
@DeeV - 所以我转换它们的方式看起来正确吗?这就是我要问的。不管原始动画是否正确,我使用旧动画的转换是否良好?