关于如何获取Android的view的各种位置

*注意:这里的所有的方法都必须在视图绘制完后使用,否则都回事初始的值:0。
(也就是说,如果在onCreat方法中调用的话,都不能得到期望的值,可以在View绘制完成后,在onResume方法中调用)

getDrawingRect(Rect outRect):返回View可见的绘制边界,当然是个矩形的区域。
getLocalVisibleRect(Rect r):返回View的边界,也是个矩形的区域,上边界和左边界都是0。
getGlobalVisibleRect(Rect r):获取全局坐标系的一个视图区域, 返回一个Rect对象;这是基于整个屏幕的。
getLocationWindow(int[] location):获得View在它所在Window的坐标,无返回值,坐标存在名为location的整型数组中。
getLocationOnScreen(int[] location):获得View在整个屏幕的的坐标(也就是绝对坐标,包括顶端的通知栏),无返回值,坐标存在名为location的整型数组中。
getLeft,getTop,getBottom,getRight,这是一组获得相对它所在的父视图的位置。

int[] location=new int[2];
location=myView.getLocationOnWindow(location);
x=location[0];
y=location[1];
//这里的新建Point点即为MyView的左上角坐标位置。
Point point=new Point(x,y);


  • 0
    点赞
  • 1
    收藏
    觉得还不错? 一键收藏
  • 0
    评论
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值