您的位置:首页 > 移动开发 > Android开发

android 获取控件位置坐标,屏幕尺寸,标题栏,状态栏高度

2013-01-26 15:52 716 查看
1.屏幕尺寸,源代码如下:

DisplayMetrics metrics = new DisplayMetrics();
getWindowManager().getDefaultDisplay().getMetrics(metrics);
int screenWidth=metrics.widthPixels;            //屏幕宽度
int .screenHeight=metrics.heightPixels;        //屏幕高度


这段代码可以插入到 Activity 的 onCreate() 函数中。

2.获取标题栏、状态栏高度:

Rect rect = new Rect();
Window win = this.getWindow();
win.getDecorView().getWindowVisibleDisplayFrame(rect);
int statusBarHeight = rect.top;
int contentViewTop = win.findViewById(Window.ID_ANDROID_CONTENT).getTop();
int titleBarHeight = contentViewTop - Variable.statusBarHeight; //statusBarHeight为状态栏高度,titleBarHeight为标题栏高度


  

getLocationOnScreen 计算该视图在全局坐标系中的x,y值,(注意这个值是要从屏幕顶端算起,也就是包括了通知栏的高度)//获取在当前屏幕内的绝对坐标

getLocationInWindow 计算该视图在它所在的widnow的坐标x,y值,//获取在整个窗口内的绝对坐标

getLeft , getTop, getBottom, getRight, 这一组是获取相对在它父亲里的坐标

int[] location = new int[2] ;
view.getLocationInWindow(location); //获取在当前窗口内的绝对坐标
view.getLocationOnScreen(location); //获取在整个屏幕内的绝对坐标
location [0]--->x坐标

location [1]--->y坐标
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: 
相关文章推荐