ImageView的X Y坐标不正确

时间:2018-12-13 07:01:39

标签: java android android-imageview

我在获取ImageView的正确坐标(XY)时遇到了一些麻烦。

我的布局如下:

<Relativelayout>
    <Relativelayout>
        <LinearLayout>
            //I want to get the X and Y of this imageview
            <ImageView/>
        </LinearLayout>
    </Relativelayout>
</Relativelayout>

在查看了similar问题之后,我实现了以下内容:

int[] img_coordinates = new int[2];
mImageView.getLocationOnScreen(img_coordinates);
double x = (double)img_coordinates[0];
double y = (double)img_coordinates[1];

只需确保将上述内容添加到ViewTreeObserver中,如下所示:

mImageView.getViewTreeObserver().addOnGlobalLayoutListener(
    new ViewTreeObserver.OnGlobalLayoutListener() {
        @Override
        public void onGlobalLayout() {
            int[] img_coordinates = new int[2];
            mImageView.getLocationOnScreen(img_coordinates);
            float x = (double)img_coordinates[0];
            float y = (double)img_coordinates[1];
    }
});

我的问题是返回的XY不正确


我的问题:

我是否有任何原因导致坐标不正确以及如何获取正确的坐标?


编辑:

我决定为我的整个xml布局文件提供pastebin,因为它很大,并且需要花费一些时间来格式化。 Here是链接。

此外,这是我想要实现的目标的图像:

enter image description here

0 个答案:

没有答案