繁体   English   中英

如何获得相对于Android中另一个视图的视图位置?

[英]How do I get a view position relative to another view in Android?

我正在为Android开发一个应用程序,该应用程序使用ImageView在屏幕上显示摄像机图像(经过一些操作之后),并且我希望允许在屏幕上移动其他ImageView,但只能在父ImageView内部移动。

此外,我需要相对于父ImageView的坐标获取子视图的坐标。 即-因此(0,0)不会是整个屏幕,而是显示摄像机的ImageView。

那有可能吗? 如果是这样-如何?

非常感谢帮助! 谢谢

如果您想通过拖动来移动视图,则这里有很多信息,例如, 通过触摸事件移动图像

如何获得minorView相对于majorView的顶部和左侧,也很简单, minorViewRelativeTop = minorViewTop - majorViewTop简单地减去minorViewRelativeTop = minorViewTop - majorViewTop 使用View.getLocationInWindow()获取这些绝对位置。

注意: View.getLocationInWindow()通常仅在Activity.onCreate()内部不起作用,因此最好在延迟后调用它。 对于测试,可能是这样的:

majorView.postDelayed(new Runnable() {
            @Override
            public void run() {
                int[] location = new int[2];
                majorView.getLocationInWindow(location);
                int majorViewLeft = location[0];
                int majorViewTop = location[1];
            }
        }, 1000);

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM