使用ObjectAnimator实现上滑动画

4

我正在尝试使用ObjectAnimator进行向上滑动的平移动画,因为正如我们所知道的,如果使用普通的平移动画,例如:

<onclicklistener>

将不起作用。

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

上述的XML代码可以正常工作,但正如我之前所说,点击监听器在动画后不起作用。 我尝试使用ObjectAnimator,就像下面这个例子:
ObjectAnimator mover = ObjectAnimator.ofFloat(filterLayout, "translationY", 1.0f, 0.1f);
mover.start();

但它与翻译xml不会得到相同的结果。任何帮助将不胜感激。
2个回答

2
我知道有点晚了,但请检查以下代码并看看是否适用于您的情况。我以您分享的XML代码为参考。"最初的回答"
ObjectAnimator.ofPropertyValuesHolder(
        view,
        PropertyValuesHolder.ofFloat(View.TRANSLATION_Y, 100.0f, 10.0f));

2
你的问题在于你传递给ObjectAnimator的值不是百分比,而是绝对值。
因此,你需要先计算视图的高度,然后将其传递给ObjectAnimator。
ObjectAnimator.ofFloat(filterLayout,"translationY",calcHeight,calcHeight * 0.1f);

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