如何在Android中使用XML构建动画上下滑动的Animator?

4

我一直在尝试找出如何构建一个动画 (xml),让它产生向上滑动和向下滑动的效果。这该如何实现呢?谢谢。


2
如果你正在给 View 执行动画效果,且可以接受编程方式的响应,不妨考虑下 droidQuery$.with(view).slideUp()$.with(view).slideDown() - Phil
如果我想添加一个片段并引起向上滑动的动画,那么它在片段事务中如何使用? - n3wb
1个回答

34

在项目的 res 文件夹下创建一个名为 anim 的文件夹。

现在添加 slide_up.xml 以进行向上滑动动画。

然后添加 slide_down.xml 以进行向下滑动动画。

slide_down.xml 的代码:

<set xmlns:android="http://schemas.android.com/apk/res/android">  
    <translate android:fromXDelta="0" android:toYDelta="-1000" android:duration="1500"/>
</set>

slide_up.xml 的代码:

<set xmlns:android="http://schemas.android.com/apk/res/android">  
    <translate android:fromXDelta="0" android:toYDelta="1000" android:duration="1500"/>
</set>

接着在onCreate方法中载入动画:

Animation slideUp = AnimationUtils.loadAnimation(getApplicationContext(), R.anim.slide_up);

要开始它,将它连接到您想要动画的对象上:

ImageView img = (ImageView) findViewById(R.id.img);
img.startAnimation(slideUp);

希望我已经帮到了你。:-)


2
由于每个 XML 文件中只涉及一个 translate,因此您不需要将其包装在 set 元素中。但是,如果您正在使用 appcompat_v7,则根本不需要 XML 文件,只需使用 R.anim.abc_slide_in_bottomR.anim.abc_slide_out_bottom 即可。 - Steve Waring

网页内容由stack overflow 提供, 点击上面的
可以查看英文原文,
原文链接