2

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

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

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

有人知道这样做的方法吗?

4

1 回答 1

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 毫秒内从右侧移入下一帧。

于 2011-07-01T12:25:51.493 回答