获取imageview的位置

时间:2016-05-29 13:49:15

标签: android imageview

嗨,所以我试图在Android中使用

获取imageview的位置
xPosition = view.getLeft();
yPosition = view.getTop();

但无论imageview恰好在哪里,它都会继续返回0。使用

时也会出现同样的情况
view.getLocationOnScreen(int[] location);

有没有人知道为什么会这样?

1 个答案:

答案 0 :(得分:0)

您可以在onCreate完成后使用这些方法。一种方法是在onCreate方法中使用这个:

view.getViewTreeObserver().addOnGlobalLayoutListener(new OnGlobalLayoutListener() {
        @Override
        public void onGlobalLayout() {

            //do your thnig here.....

            if (Build.VERSION.SDK_INT < 16) { 
                view.getViewTreeObserver().removeGlobalOnLayoutListener(this);                                                                                        
            } 
            else { 
                view.getViewTreeObserver().removeOnGlobalLayoutListener(this);  
            } 
        }
    });

构建布局时将通知globalLayoutListener并运行onGlobalLayout方法。在执行完所需操作后,请务必删除globalLayoutListener。