安卓系统;在AdapterViewFlipper上设置进/出动画:未知的动画名称translate



我有一些非常简单的动画,可以完美地与ViewFlipper一起工作,但如果我尝试将它们设置在AdapterViewFlipper in/out上,我会得到一个运行时错误"未知动画器名称翻译"。在查看各自的方法时,看起来ViewFlipper期望一个ViewAnimation,而AdapterViewFlipper期望一个AdapterViewAnimation。这两个api在其他方面是相同的,并且都没有错误。下面是其中一个动画的xml:

<?xml version="1.0" encoding="utf-8"?>
<set xmlns:android="http://schemas.android.com/apk/res/android" 
    android:shareInterpolator="false">
    <translate
    android:fromXDelta="0%" android:toXDelta="-100%"
    android:fromYDelta="0%" android:toYDelta="0%"
    android:duration="800"/>
</set>

我把它设置在鳍上,像

vf.setOutAnimation(this, R.anim.out_to_left);

我可以猜到这可能意味着我不能使用翻译,类型,但我如何完成相同的动画?蹩脚的…

在这里找到答案:https://stackoverflow.com/a/26197426/1534666

看起来ViewFlipperAdapter需要一个objectAnimator,而不是一个set。

示例left_in.xml,在animator文件夹

中声明
<objectAnimator xmlns:android="http://schemas.android.com/apk/res/android"
            android:interpolator="@android:anim/accelerate_decelerate_interpolator"
            android:propertyName="x"
            android:valueType="floatType"
            android:valueFrom="-1500"
            android:valueTo="0"
            android:duration="600"/>

最新更新