我正在尝试使用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();
但它没有提供与翻译xml相同的结果。
任何帮助将不胜感激。
答案 0 :(得分:0)
您的问题是,传递给ObjectAnimator的值不是百分比,而是绝对值。
所以你必须计算视图的高度,然后将它传递给ObjectAnimator即。
ObjectAnimator.ofFloat(filterLayout,"translationY",calcHeight,calcHeight * 0.1f);
答案 1 :(得分:0)
我知道已经晚了,但是,请检查以下代码,看看是否适合您的情况。我将您共享的XML代码作为对此的参考。
ObjectAnimator.ofPropertyValuesHolder(view,PropertyValuesHolder.ofFloat(View.TRANSLATION_Y, 100.0f, 10.0f));