Android获取手机分辨率DisplayMetircs类

关于Android中手机分辨率的使用

Android 可设置为随着窗口大小调整缩放比例,但即便如此,手机程序设计人员还是必须知道手机屏幕的边界,以避免缩放造成的布局变形问题。

手机的分辨率信息是手机的一项重要信息,很好的是,Android 已经提供DisplayMetircs 类可以很方便的获取分辨率。下面简要介绍 DisplayMetics 类:

Android.util包下的DisplayMetrics类提供了一种关于显示的通用信息,如显示大小,分辨率和字体。

为了获取DisplayMetrics成员,首先初始化一个对象如下:

DisplayMetrics display=new DisplayMetrics();

Log.d("yujian<<", display.toString());//直接在这里输出,信息都是0.

getWindowManager().getDefaultDisplay().getMetrics(display); //将当前窗口的一些信息放在DisplayMetrics类中,

Log.d("yujian<<", display.toString());//然后就可以通过dispalyMetrics类来获取当前窗口的一些信息

注意:

构造函数DisplayMetrics不需要传递任何参数,getDefaultDisplay()方法将取得的宽高纬度存放于DisplayMetircs对象中,而取得的宽高纬度是以像素为单位的(pixel),像素所指的是绝对像素而非相对像素。

通过DisplayMetrics的toString()方法可以获取到DisplayMetrics的大部分fields 信息,如下是在分辨率为480x320情况下的一些输出信息:

12-06 16:39:34.946: D/yujian<<(6731): DisplayMetrics {density=1.0, width=320, height=480, scaledDensity=1.0, xdpi=159.37254, ydpi=160.42105}

上一篇:android项目的结构和布局


下一篇:Android学习笔记④——页面的布局方式