0

我有一个视图,我需要在屏幕上获取它的顶部和底部位置。所以我进行了以下实验: 试图弄清楚命中矩形的作用,我进行了以下实验

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]是一样的。

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

4

1 回答 1

1

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

于 2013-09-24T17:42:24.480 回答