前言

获取屏幕我们第一个想到的就是DisplayMetrics类

java.lang.Object
↳ android.util.DisplayMetrics

是Android提供的记述屏幕的有关信息的一种结构,诸如其尺寸,密度和字体缩放的一般信息。

第一种方法:

WindowManager wm = (WindowManager) context.getSystemService(       Context.WINDOW_SERVICE);DisplayMetrics metrics= new DisplayMetrics();wm.getDefaultDisplay().getMetrics(metric);

第二种方法

DisplayMetrics metrics= new DisplayMetrics();getWindowManager().getDefaultDisplay().getMetrics(metrics);)

第三种方法

        DisplayMetric metrics=mContext.getResources().getDisplayMetric();        //这俩个就是手机屏幕的屏幕分辨率,物理宽高值如1080*1920(ToolBar或ActionBar会占据一定空间,得到的heightPiexls会小一点)        int width = metrics.widthPixels;  // 表示屏幕的像素宽度,单位是px(像素)        int height = metrics.heightPixels;  // 表示屏幕的像素高度,单位是px(像素)        float density = metrics.density;  // 显示器的逻辑密度,Density Independent Pixel(如3.0)         ( metrics.scaledDensity和metrics.density数值是一样的)        int densityDpi = metrics.densityDpi;  // 整个屏幕的像素密度DPI(dots per inch每英寸像素数),可以是密度低,密度中等,或者密度高(如240/ 360 / 480)        float xdpi= metrics.xdpi /表示在X轴方向上每英寸的像素值,X轴方向上的DPI(dots per inch)        float ydpi= metrics.ydpi //表示在Y轴方向上每英寸的像素值,  Y方向上的DPI//wm.getDefaultDisplay().getHeight();获得的数据和int height = metrics.heightPixels一样,不过getHeight()方法弃用了,建议使用后者

更多相关文章

  1. drawable( hdpi, ldpi, mdpi, xhdpi)区别
  2. [转]Android(安卓)获取当前Activity的屏幕截图
  3. Android中判断状态栏是否存在
  4. android 屏幕切换
  5. Android屏幕、键盘背光Framework和Linux led_classdev
  6. Android中的两把锁
  7. Android(安卓)屏幕分辨率适配原理
  8. 关于android的webview屏幕适应
  9. PopWindow Android(安卓)7.0 位置显示不准确解决办法

随机推荐

  1. 第十天android:寻找UI
  2. android 进程间的内存分配
  3. Android的消息提示框,ImageView,进度条
  4. android AudioRecorder简单心得
  5. Android 模拟器下载、编译及调试
  6. 捕获android中的Home key
  7. Android菜鸟日记32-游戏中的碰撞
  8. 关于基本控件EditText属性大全详解
  9. android 原生人脸检测
  10. Android studio gradle配置