您的位置:首页 > 移动开发 > Android开发

android 控件 获取 position

2015-11-30 14:40 316 查看
原来也一直有用的是vv.getLocationOnScreen(location)

但是具体剩下的 几个获取的没有详细了解过,今天查了下资料

api

Text View  vv;

vv.getLocationInWindow(location)
vv.getLocationOnScreen(location)
vv.getLocalVisibleRect(r)
vv.getGlobalVisibleRect()

vv.getLeft ()
vv.getTop()
vv.getBottom()
vv.getRight()


用法

getLocationOnScreen

这个是我经常用的,获得到的 x,y 就是相对于屏幕而言的

int[] position = new int[2];
vv.getLocationOnScreen(position);


getLocationInWindow

这个是相对于窗口而言, 也就是说

X 是一样的,

Y = 标题栏高度(如果有标题栏)+ 状态栏高度+ view相对状态栏的Y

上面其实是数据和 OnScreen差不多的

但是 如果是 windowActivity的话

就是相对于 windowActivity 的x y 了。

int[] position = new int[2];
vv.getLocationOnScreen(position);


getLocalVisibleRect

这个一看就知道是 visibile(可见),取到的是本view的x y

Rect rect= new Rect();
button.getLocalVisibleRect(rect);


getGlobalVisibleRect

Global 一看就是全局的,获取全局坐标系的一个视图区域, 返回一个填充的Rect对象;该Rect是基于总整个屏幕的

Y = 标题栏高度(如果有标题栏)+ 状态栏高度+ view相对状态栏的Y

但是 如果是 windowActivity的话

就是相对于 windowActivity 的x y 了。

Rect rect= new Rect();
vv.getGlobalVisibleRect(rect);
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签:  android view position