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

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

2013-08-27 17:02 746 查看
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值,(注意这个值是要从屏幕顶端算起,也就是包括了通知栏的高度)//获取在当前屏幕内的绝对坐标 
[b]getLocationInWindow 计算该视图在它所在的widnow的坐标x,y值,//获取在整个窗口内的绝对坐标
[/b]
[b]getLeft , getTopgetBottomgetRight, 这一组是获取相对在它父亲里的坐标
int[] location = new  int[2] ;

view.getLocationInWindow(location); //获取在当前窗口内的绝对坐标

view.getLocationOnScreen(location);//获取在整个屏幕内的绝对坐标

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