多应用+插件架构,代码干净,二开方便,首家独创一键云编译技术,文档视频完善,免费商用码云13.8K 广告
Android已经提供DisplayMetircs类可以很方便的获取分辨率。下面简要介绍DisplayMetics类: Andorid.util包下的DisplayMetrics类提供了一种关于显示的通用信息,如显示大小,分辨率和字体。 为了获取DisplayMetrics成员,首先初始化一个对象如下: DisplayMetrics metrics =new DisplayMetrics(); getWindowManager().getDefaultDisplay().getMetrics; 注:构造函数DisplayMetrics不需要传递任何参数;调用getWindowManager()之后,会取得现有Activity的Handle,此时,getDefaultDisplay()方法将取得的宽高维度存放于DisplayMetrics对象中,而取得的宽高维度是以像素为单位(Pixel),“像素”所指的是“绝对像素”而非“相对像素”。 一般通用程序写法如下: ~~~ Display display = getWindow().getWindowManager().getDefaultDisplay(); DisplayMetrics outMetrics = new DisplayMetrics(); display.getMetrics(outMetrics); ~~~ 这里很奇怪,和我们一般的理解不一样,这里是把测量的结果存放到outMetrics 中。outMetrics中就存放了,我们需要的屏幕的宽高数据,通过outMetrics.  后面就会出现很多有关屏幕信息的数据,例如常用的宽WidthPixels 和高 heightPixels; ![](https://box.kancloud.cn/2016-04-25_571e215230aaf.jpg) 例如下面一句代码就是获取屏幕一半的宽度: ~~~ int with = outMetrics.widthPixels/2; ~~~