Java 如何在动画过程中获取视图的坐标

Java 如何在动画过程中获取视图的坐标,java,android,animation,Java,Android,Animation,这些就是我在animationListener期间可以覆盖的方法。 我认为在onAnimationStart中添加一个线程,并在onAnimationEnd上停止它,然后在线程中使用循环获取坐标,这可能会起作用。 但我认为我可能会遇到一些按钮的问题,因为当以这种方式设置它们的动画时,只有背景移动,而不是按钮区域本身 在这种情况下,我必须对按钮进行更多的研究 您对此有何看法?是否有其他方法实现我的目标? 这是更好的方法吗?我研究过,我得到的是这个,不是X和Y,而是可以处理数据,得到随着时间变化的

这些就是我在animationListener期间可以覆盖的方法。

我认为在onAnimationStart中添加一个线程,并在onAnimationEnd上停止它,然后在线程中使用循环获取坐标,这可能会起作用。 但我认为我可能会遇到一些按钮的问题,因为当以这种方式设置它们的动画时,只有背景移动,而不是按钮区域本身

在这种情况下,我必须对按钮进行更多的研究

您对此有何看法?是否有其他方法实现我的目标?

这是更好的方法吗?

我研究过,我得到的是这个,不是X和Y,而是可以处理数据,得到随着时间变化的动画

                 ObjectAnimator anim = ObjectAnimator.ofFloat(box_image, "translationX", 0 , cant);

                  anim.addUpdateListener(new ValueAnimator.AnimatorUpdateListener() {
                                @Override
                                public void onAnimationUpdate(ValueAnimator arg0) {

                                  double f = Math.round(arg0.getAnimatedFraction()*1000.0)/1000.0;
                                    Log.d("datos", ""+f);
                                }
                            });
                  anim.setDuration(1000);
                  anim.start();

我认为问题在于如何定义动画。请显示此代码:动画=新建???
                 ObjectAnimator anim = ObjectAnimator.ofFloat(box_image, "translationX", 0 , cant);

                  anim.addUpdateListener(new ValueAnimator.AnimatorUpdateListener() {
                                @Override
                                public void onAnimationUpdate(ValueAnimator arg0) {

                                  double f = Math.round(arg0.getAnimatedFraction()*1000.0)/1000.0;
                                    Log.d("datos", ""+f);
                                }
                            });
                  anim.setDuration(1000);
                  anim.start();