android - 使用 ObjectAnimator 向上滑动动画

标签 android android-animation android-xml

我正在尝试使用 ObjectAnimator 来制作向上滑动的翻译动画,因为我们知道,如果我们像这样使用普通的翻译动画,onclicklistener 将无法工作,

<translate
    android:duration="1000"
    android:fromYDelta="100%"
    android:toYDelta="10%" />

上面的 xml 代码工作正常,但正如我之前所说,onclicklistener 在动画之后不起作用。 我尝试了如下所示的 ObjectAnimator

ObjectAnimator mover = ObjectAnimator.ofFloat(filterLayout, "translationY", 1.0f, 0.1f);
mover.start();

但它不会给出与 translate xml 相同的结果。

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

最佳答案

这里的问题是您传递给 ObjectAnimator 的值不是百分比,而是绝对值。

因此您必须计算 View 的高度,然后将其传递给 ObjectAnimator 即。

ObjectAnimator.ofFloat(filterLayout,"translationY",calcHeight,calcHeight * 0.1f);

关于android - 使用 ObjectAnimator 向上滑动动画,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40182137/

相关文章:

java - 在 TextView 中淡入淡出时滑入

android-animation - 如何通过Android在 Canvas 上以恒定速度缓慢绘制几条线?

android - 以下类无法实例化 : - com. google.android.gms.plus.PlusOneButton

android - 为什么小部件在重启后不起作用?

android - 如何拥有一个自动滚动的TextView

android - 如何在android中截取布局的屏幕截图

android - 在一个 Activity 中处理多个动画和 View

java - 动态按钮的 NullPointerException 设置 onClickEvent

Android RelativeLayout 在另一个元素边框上对齐元素

android - 如何设置多个标志 xml android