Android 如何获取视图的矩形周长

Android 如何获取视图的矩形周长,android,android-layout,coordinates,android-relativelayout,android-view,Android,Android Layout,Coordinates,Android Relativelayout,Android View,我有一个视图,我需要得到它在屏幕上的顶部和底部位置。因此,我进行了以下实验: 为了弄清楚命中矩形的作用,我运行了以下实验 int[] location = { 0, 0 }; myView.getLocationOnScreen(location); Rect outRect = new Rect(); myView.getHitRect(outRect); 然后我打印出来 outRect.top = 18 outRect.bottom = 138 location[0] = 216 loca

我有一个视图,我需要得到它在屏幕上的顶部和底部位置。因此,我进行了以下实验: 为了弄清楚命中矩形的作用,我运行了以下实验

int[] location = { 0, 0 };
myView.getLocationOnScreen(location);
Rect outRect = new Rect();
myView.getHitRect(outRect);
然后我打印出来

outRect.top = 18
outRect.bottom = 138
location[0] = 216
location[1] = 387
我原以为
outRect.top
location[1]
是一样的

那么,如何获取矩形视图的顶部和底部位置?

getLocationOnScreen()
返回视图相对于屏幕的X和Y位置:您可以通过将getHeight()的值添加到Y位置来计算底部位置
getHitRect()
返回视图相对于其父视图的位置,这就是为什么会得到不同的数字。

检查它