7

要获得相对于其父级的视图,我可以使用getLeft()getRight()getTop()getBottom()。但是如何获得相对于布局文件最顶层父级的视图?所以说我的前夕布局是RelativeLayout。然后说在前夕我有许多嵌套布局。然后在层次结构的深处,我有一个 EditText 视图。如何获取 EditText 视图相对于 eve 的位置?

4

2 回答 2

8

要找出绝对视图位置,您可以使用view.getLocationOnScreen()view.getLocationInWindow()

于 2013-07-12T20:58:12.063 回答
4
View target = findViewById(R.id.target_id);
View parent = (View)target.getParent();
int x = target.getLeft();
int y = target.getTop();
while(parent != null){
   x += parent.getLeft();
   y += parent.getTop();
   parent = (View)parent.getParent()
}

这些代码可能会对您有所帮助,因为我没有对其进行测试。我希望它会奏效。

于 2013-07-13T05:39:36.050 回答