我需要通过ValueAnimator
创建一个特定的x
和y
值的翻译动画,所以我编写了以下代码,但它没有按预期工作并抛出{{1在NullPointerExceptions
和valueAnimator.getAnimatedValue("x")
!
valueAnimator.getAnimatedValue("y")
有什么想法吗?
答案 0 :(得分:1)
问题在于,您正在尝试获取名为" x"的属性的值。但你还没有定义什么是" x"它的价值是什么?所以在你的情况下,我们需要定义" x"的限制。和" y"属性。
所以只需替换
ValueAnimator translate = ValueAnimator.ofInt(viewX, endX, viewY, endY);
带
ValueAnimator translate = new ValueAnimator(); // Inititing ValueAnimator obj
translate.setValues(PropertyValuesHolder.ofInt("x",viewX,endX), // set the limits of property "x"
PropertyValuesHolder.ofInt("y", viewY,endY)); // setting the limits of property "y"
通过这种方式,我们可以在onAnimationUpdate方法中获取valueAnimator.getAnimatedValue("x") & valueAnimator.getAnimatedValue("y")