码迷,mamicode.com
首页 > 移动开发 > 详细

android应用程序中获取view的位置

时间:2014-11-10 13:26:39      阅读:258      评论:0      收藏:0      [点我收藏+]

标签:android   io   ar   sp   on   cti   bs   ef   应用   

获取View类界面控件的位置,有助于添加新的控件。


获取在parent里的相对坐标位置
   这个比较简单,不用多说,直接调用View的方法:getLeft , getTop, getBottom, getRight获得。

获取在屏幕中的绝对位置 

getLocalVisibleRect


getGlobalVisibleRect

这个方法是构建一个Rect用来"套"这个view.此Rect的坐标是相对当前activity而言.

若是普通activity,则Rect的top为可见的状态栏高度+可见的标题栏高度+Rect左上角到标题栏底部的距离.

若是对话框式的activity,则y坐标为Rect的top为可见的标题栏高度+Rect左上角到标题栏底部的距离.

此时是无视状态栏的有无的.

getLocationInWindow

这个方法是将view的左上角坐标存入数组中.此坐标是相对当前activity而言.

若是普通activity,则y坐标为可见的状态栏高度+可见的标题栏高度+view左上角到标题栏底部的距离.

可见的意思是:在隐藏了状态栏/标题栏的情况下,它们的高度以0计算.

若是对话框式的activity,则y坐标为可见的标题栏高度+view到标题栏底部的距离.

此时是无视状态栏的有无的.

getLocationOnScreen
这个方法跟上面的差不多,也是将view的左上角坐标存入数组中.但此坐标是相对整个屏幕而言.
y坐标为view左上角到屏幕顶部的距离.

android应用程序中获取view的位置

标签:android   io   ar   sp   on   cti   bs   ef   应用   

原文地址:http://www.cnblogs.com/dg81381749/p/4086890.html

(0)
(0)
   
举报
评论 一句话评论(0
登录后才能评论!
© 2014 mamicode.com 版权所有  联系我们:gaon5@hotmail.com
迷上了代码!