Android 中的DisplayMetrics类的用法

来源:互联网 发布:知乎女神芈十四 编辑:程序博客网 时间:2024/04/30 06:37

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

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

Andorid.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() 方法将取得的宽高维度存放于DisplayMetrics 对象中,而取得的宽高维度是以像素为单位(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}


0 0