获取ImageView的实时坐标,同时它在android上的翻译动画



我有一个ImageView,设置为"平移动画"。我想要ImageView移动时的实时坐标。

我在这里的代码:

ImageView myimage = (ImageView)findViewById(R.id.myimage);
  Animation animation = new TranslateAnimation(100, 200, 300, 400);
  animation.setDuration(1000);
  myimage.startAnimation(animation);
  animation.setRepeatCount(Animation.INFINITE);
  int x = myimage.getLeft();
  int y = myimage.getTop(); 

变量x和y不实时更新,只提供ImageView的原始静态坐标。

如何在ImageView运动时获得实时坐标?

你可以这样尝试,

   ImageView myimage = (ImageView)findViewById(R.id.myimage);
  Animation animation = new TranslateAnimation(100, 200, 300, 400);
  animation.setDuration(1000);
  myimage.startAnimation(animation);
  animation.setRepeatCount(Animation.INFINITE);
    int[] firstPosition = new int[2];
    myimage.measure(View.MeasureSpec.EXACTLY, View.MeasureSpec.EXACTLY);
        myimage.getLocationOnScreen(firstPosition);
        int r = myimage.getMeasuredWidth() + firstPosition[1];
        int rr = myimage.getMeasuredWidth() + firstPosition[0];
int[] imageCordinates = new int[2];
                imgv1.getLocationOnScreen(imageCordinates);
                x = imageCordinates[0] + (imgv1.getWidth() / 2);
                y = imageCordinates[1] + (imgv1.getHeight() / 2);

最新更新