博客
关于我
android中getLocationInWindow 和 getLocationOnScreen的区别
阅读量:362 次
发布时间: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/

你可能感兴趣的文章
Python:按字符的位置拆分字符串
查看>>
Python:替换嵌套字典中的值
查看>>
Python:爬取数据出现response.status_code为403解决方法
查看>>
Python:爬取数据出现response.status_code为418解决方法
查看>>
Python:生成“元组集“;来自“元组列表“;不考虑顺序
查看>>
Python:生成具有趋势的随机时间序列数据(例如周期性、指数衰减等)
查看>>
Python:用渐进式数字重命名列表中的重复项而不对列表进行排序
查看>>
Python:矩形参数无效
查看>>
Python:语法进阶
查看>>
Python:调用复制函数时调用 Python 对象时超出了最大递归深度
查看>>
Python:这两个 import 语句有什么区别?
查看>>
Python:通过串口从 Velleman k8090 读取数据
查看>>
python:遍历具有列表值的字典
查看>>
Python:降低精度 pandas 时间戳数据帧
查看>>
python:非阻塞子进程,检查标准输出
查看>>
PythonABC多重继承
查看>>
Pythonargparse中的多个参数
查看>>
Python关于 *args 和 **kwargs 参数的详解(全)
查看>>
Pythonfrozenset散列算法/实现
查看>>
PythonGTK+3:通过单击列对树视图进行排序
查看>>