zoukankan      html  css  js  c++  java
  • android 获取控件位置坐标,屏幕尺寸,标题栏,状态栏高度

    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坐标

  • 相关阅读:
    [Bullet3]创建世界(场景)及常见函数
    [erlang]supervisor(监控树)的重启策略
    [game]十字链表的AOI算法实现
    [翻译][erlang]cowboy handler模块的使用
    数据挖掘算法系列目录
    Spark原理分析目录
    Spark实战系列目录
    2019年读书书单
    Hadoop源码解读系列目录
    分布式架构系列目录
  • 原文地址:https://www.cnblogs.com/yichouangle/p/2877884.html
Copyright © 2011-2022 走看看