博客
关于我
android中getLocationInWindow 和 getLocationOnScreen的区别
阅读量:361 次
发布时间:2019-03-04

本文共 691 字,大约阅读时间需要 2 分钟。

一个控件在其父窗口中的坐标位置可以通过.getLocationInWindow(int[] location)方法获取。该方法以控件为原点,返回控件在其窗口中的坐标位置。参数是一个整数数组location,其中包含两个整数,分别表示x轴和y轴的坐标。

同样,一个控件在其整个屏幕上的坐标位置可以通过.getLocationOnScreen(int[] location)方法获取。该方法以屏幕的左下角为原点,返回控件在屏幕上的绝对坐标位置。参数同样是一个整数数组location,其中包含两个整数,分别表示x轴和y轴的坐标。

需要注意的是,.getLocationInWindow方法以控件为原点,而.getLocationOnScreen方法以屏幕的左下角为原点。以下是两个方法的示例代码:

int[] location = new int[2];start.getLocationInWindow(location);location[0] = location[0]; // 获取当前位置的横坐标location[1] = location[1]; // 获取当前位置的纵坐标
int[] location = new int[2];start.getLocationOnScreen(location);location[0] = location[0]; // 获取当前位置的横坐标location[1] = location[1]; // 获取当前位置的纵坐标

需要注意的是,当控件不附加在窗口时,.getLocationInWindow方法可能无法返回有效的坐标位置。

转载地址:http://eepr.baihongyu.com/

你可能感兴趣的文章
Objective-C实现zellers congruence泽勒一致算法(附完整源码)
查看>>
Objective-C实现Zero One Knapsack零一背包计算算法(附完整源码)
查看>>
Objective-C实现一个Pangram字符串至少包含一次所有字母算法(附完整源码)
查看>>
Objective-C实现一个stack算法(附完整源码)
查看>>
Objective-C实现一个通用的堆算法(附完整源码)
查看>>
Objective-C实现一分钟倒计时(附完整源码)
查看>>
Objective-C实现一阶高斯滤波(附完整源码)
查看>>
Objective-C实现三次样条曲线(附完整源码)
查看>>
Objective-C实现上传文件到FTP服务器(附完整源码)
查看>>
Objective-C实现两个栈实现队列算法(附完整源码)
查看>>
Objective-C实现两个队列实现栈算法(附完整源码)
查看>>
Objective-C实现两数之和问题(附完整源码)
查看>>
Objective-C实现中值滤波(附完整源码)
查看>>
Objective-C实现中国剩余定理(附完整源码)
查看>>
Objective-C实现中文模糊查询(附完整源码)
查看>>
Objective-C实现串口通讯(附完整源码)
查看>>
Objective-C实现串逐位和(附完整源码)
查看>>
Objective-C实现串链式存储简单匹配(附完整源码)
查看>>
Objective-C实现主存储器空间的分配和回收(附完整源码)
查看>>
Objective-C实现乘方运算---m的n次方(附完整源码)
查看>>