Android获得控件在屏幕中的绝对坐标
2024-09-09 15:56:21
int[] location = new int[2] ;
view.getLocationInWindow(location); //获取在当前窗口内的绝对坐标
view.getLocationOnScreen(location);//获取在整个屏幕内的绝对坐标
location [0]--->x坐标,location [1]--->y坐标
getLocationOnScreen
计算该视图在全局坐标系中的x,y值,(注意这个值是要从屏幕顶端算起,也就是索包括了通知栏的高度)//获取在当前屏幕内的绝对坐标
getLocationInWindow
计算该视图在它所在的widnow的坐标x,y值,获取在整个窗口内的绝对坐标
getLeft , getTop, getBottom,getRight
这一组是获取相对在它父亲里的坐标
如果在Activity的OnCreate()
事件输出那些参数,是全为0,要等UI控件都加载完了才能获取到这些。
在onWindowFocusChanged(boolean hasFocus)
中获取为好
即覆写Activity的onWindowFocusChanged(boolean hasFocus)
方法
XXX_Activity:
@Override
public void onWindowFocusChanged(boolean hasFocus) {
super.onWindowFocusChanged(hasFocus);
int[] location1 = new int[2] ;
view.getLocationInWindow(location1); //获取在当前窗口内的绝对坐标
int[] location2 = new int[2] ;
view.getLocationOnScreen(location2);//获取在整个屏幕内的绝对坐标
//do something
}
更多资料:
PS:本文为转载,首发地址不可考,网上搜到的全是转载的,故不能贴出原地址,如果你是作者可以留言原地址或者要求删除。
最新文章
- Oracle数据加载之sqlldr工具的介绍
- java基本数据类型
- 高斯模糊算法的 C++ 实现
- python gui之tkinter事件处理
- SPSS数据分析—简单线性回归
- [SAP ABAP开发技术总结]初始值、空、NULL、INITIAL等问题
- ACTIVITI 表结构数据分析
- C++学习5
- POJ C++程序设计 编程题#2 编程作业—多态与虚函数
- iOS UICollectionView 入门 07 点击cell放大图片
- swift 语法 - 以及学习资料
- js 属性类型
- VGG网路结构
- 如何在linux下使用git管理上传代码&;误删文件修复
- ACM题集以及各种总结大全(转)
- VUE2.0 饿了吗视频学习笔记(七-终):compute,循环,flex,display:table
- Python3-RabbitMQ 3.7.2学习——Hello World(二)
- vue + element ui 实现实现动态渲染表格
- HIBERNATE知识复习记录4-HQL和QBC
- 【BZOJ4300】绝世好题(动态规划)