您的位置:首页 > 移动开发 > Android开发

android中获取手机分辨率 device screen dimensions

2015-11-12 15:32 639 查看
博客源址android中获取手机分辨率

博客时间:2012-07-06 11:07

在Activity中

 // ME722 测试 480*854   竖屏

Display display = this.getWindowManager().getDefaultDisplay();

int nHeight = display.getHeight();      //569

int nWidth = display.getWidth();        //320

DisplayMetrics metrics = new DisplayMetrics();

display.getMetrics( metrics );

int nDeviceHeight = (int)(metrics.heightPixels * metrics.density);  // 569 * 1.5 = 853.5

int nDeviceWidth = (int)(metrics.widthPixels * metrics.density);    //  320 * 1.5 = 480

float fPhisycalHeight = metrics.heightPixels * metrics.density / metrics.densityDpi; // 3.55625

float fPhisycalWidth = metrics.widthPixels * metrics.density / metrics.densityDpi; // 2.0

 

在AndroidManifest.xml中添加 <supports-screens android:anyDensity="true"/>  之后

或者是添加<uses-sdk android:minSdkVersion="4" /> 之后(最小版本号是4以及以上)

 

Display display = this.getWindowManager().getDefaultDisplay();

int nHeight = display.getHeight();      //854

int nWidth = display.getWidth();        //480

display.getMetrics( metrics );

metrics.heightPixels   854 

metrics.widthPixels 480

metrics.density 1.5

 

多看Dev Guide 

 

 Lets you specify the screen dimensions the application supports. By default, a
modern application (using API Level 4 or higher) supports all screen sizes; older applications are assumed to support only the "normal" screen size. Screen size is determined as the available pixels to an application after density scaling has been applied.
(Note that screen size is a separate axis from screen density.)


Constants


public static final int DENSITY_DEFAULT

Since: API Level 4

The reference density used throughout the system.

Constant Value: 160 (0x000000a0)


public static final int DENSITY_HIGH

Since: API Level 4

Standard quantized DPI for high-density screens.

Constant Value: 240 (0x000000f0)


public static final int DENSITY_LOW

Since: API Level 4

Standard quantized DPI for low-density screens.

Constant Value: 120 (0x00000078)


public static final int DENSITY_MEDIUM

Since: API Level 4

Standard quantized DPI for medium-density screens.

Constant Value: 160 (0x000000a0)


public static final int DENSITY_XHIGH

Since: API Level 9

Standard quantized DPI for extra-high-density screens.

Constant Value: 320 (0x00000140)

An application "supports" a given screen size if it fills the entire screen and works as expected. By default, the system will resize your application to fill the screen, if you have set either 
minSdkVersion
 or 
targetSdkVersion
 to 
"4"
 or
higher. Resizing works well for most applications and you don't have to do any extra work to make your application work on larger screens.
内容来自用户分享和网络整理,不保证内容的准确性,如有侵权内容,可联系管理员处理 点击这里给我发消息
标签: