更改ViewFlipper转换的动画或持续时间

时间:2011-01-05 03:40:29

标签: android animation viewflipper

我有一个ViewFlipper,有时我希望在视图之间设置动画,有时我希望它能在视图之间立即切换。

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

我尝试在切换前更改动画,动画和动画,但如果我这样做,当前视图会在动画中消失。

任何人都知道这样做的方法吗?

1 个答案:

答案 0 :(得分:5)

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

指定显示的孩子(没有动画)
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毫秒内从右侧移动下一帧。