博客
关于我
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/

你可能感兴趣的文章
PostgreSQL学习总结(6)—— PostgreSQL 模式(SCHEMA)详解
查看>>
PostgreSQL学习总结(7)—— PostgreSQL 语句 INSERT INTO、SELECT、UPDATE、DELETE 等学习
查看>>
PostgreSQL学习总结(8)—— PostgreSQL 基于数据库和基于模式(schema)的多租户分析
查看>>
PostgreSQL学习总结(9)—— PostgreSQL 运算符与表达式
查看>>
PostGreSql学习笔记001---PostgreSQL10.4安装(Windows)_支持PostGreGis_PostJDBC
查看>>
PostGreSql学习笔记002---Navicat Premium中管理PostGreSql 错误:字段rolcatupdate 不存在
查看>>
PostgreSQL学习笔记:PostgreSQL vs MySQL
查看>>
PostgreSQL实现shape数据转geojson数据(地图工具篇.18)
查看>>
PostgreSQL导入shape数据(地图工具篇.10)
查看>>
PostGreSql工作笔记003---在Navicat中创建数据库时报错rolcatupdate不存在_具体原因看其他博文_这里使用pgAdmin4创建管理postgre
查看>>
PostGreSql工作笔记004---PostGreSql修改密码_windows和linux下修改
查看>>
Postgresql常用命令行操作_以及Navicat操作PostGis时的问题_自动截取长度_WKB structure does not match exp---PostgreSQL工作笔记005
查看>>
PostgreSQL忘记密码
查看>>
PostgreSQL数据库pg_dump命令行不输入密码的方法
查看>>
PostgreSQL新手入门
查看>>
postgresql树状结构查询示例
查看>>
PostgreSQL流复制参数max_wal_senders详解
查看>>
postgresql流复制配置
查看>>
PostgreSQL清空表并保留表结构、清空数据库还原数据库为新建时的状态的方法
查看>>
PostgreSQL的 initdb 源代码分析之九
查看>>