android - 制作弹跳动画

标签 android android-animation

我想做图层的弹跳动画。

我已经完成了从右到中心的层,现在我想将它向后移动一点,然后再回到中心。这会产生反弹效应。

我在想我可以用这样的翻译来做到这一点:

<translate
    android:duration="900"
    android:fromXDelta="100%p"
    android:toXDelta="0%p" />

<translate
    android:duration="900"
    android:fromXDelta="0%p"
    android:toXDelta="100%p" />

<translate
    android:duration="900"
    android:fromXDelta="70%p"
    android:toXDelta="0%p" />

好吧,这段代码不起作用,我唯一能做到的是图层从左到中,然后动画停止。

我不能使用这段代码:因为它没有达到我想要的效果

setInterpolator(AnimationUtils.loadInterpolator(this,
                        android.R.anim.bounce_interpolator));

如有任何帮助,我们将不胜感激。

最佳答案

您可以使用 BounceInterpolator有这个效果。 docs包含一个很好的描述如何在 XML 中使用它。只要有一个像这样的动画 xml:

<?xml version="1.0" encoding="utf-8"?>
<set xmlns:android="http://schemas.android.com/apk/res/android"

    android:interpolator="@android:anim/bounce_interpolator">

    <!-- Use your working translate animation here-->
    <translate
        android:duration="900"
        android:fromXDelta="100%p"
        android:toXDelta="0%p" />
</set>

关于android - 制作弹跳动画,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/23937748/

相关文章:

android - super.onActivityResult() 为什么会出错?

java - 在 Android 中使用 Weka 将 CSV 转换为 ARFF 时出错

android - 使用 FFmpeg Android 更改音频音量

android - 手势和 OpenGL

android - 如何将 fragment View 的参数(如宽度和高度)获取到 Activity?

java - Android:指定圆形显示动画起始位置?

android VideoView增加缓冲

Android:将 Activity 上下文获取到数组适配器类中

android - 如何使对话框逐渐变大而不是立即变大

android - 如何使用 cubicTo 在 Android 中绘制带动画的贝塞尔曲线?