【问题标题】:Changing the animation or duration of a ViewFlipper transition更改 ViewFlipper 过渡的动画或持续时间
【发布时间】:2011-06-03 19:01:02
【问题描述】:

我有一个 ViewFlipper,有时我想让它在视图之间制作动画,有时我想让它在视图之间立即切换。

我正在尝试弄清楚如何做到这一点。

我尝试在切换之前更改动画、动画和输出动画,但如果我这样做了,当前视图会在动画期间消失。

有人知道怎么做吗?

【问题讨论】:

    标签: android animation viewflipper


    【解决方案1】:

    我面前没有确切的代码,但我记得您可以使用

    指定显示的子项(无需对其进行动画处理)
    flipper.setDisplayedChild(childIndex);
    

    如果你想改变动画的持续时间,你必须指定你自己的 InOut 动画使用

    flipper.setInAnimation(animIn);
    flipper.setOutAnimation(animOut);
    

    例如,您有一个动画 XML /res/anim/animIn.xml

    <?xml version="1.0" encoding="utf-8"?>
    <set xmlns:android="http://schemas.android.com/apk/res/android">
        <translate
            android:interpolator="@android:anim/accelerate_interpolator"
            android:fromXDelta="100%"
            android:toXDelta="0"
            android:duration="500"/>
    </set>
    

    在上面的示例中,动画在 500 毫秒内从右侧移入下一帧。

    【讨论】:

    • 如果我需要在应用程序运行时更改动画属性(如持续时间),我该怎么办?谢谢!
    • 您提供给这些方法的参数是动画。您可以在代码中定义它们或在运行时更改它们。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2013-01-18
    • 1970-01-01
    • 1970-01-01
    • 2017-01-12
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多