0

我有两种方法可以获得真正的解决方案:

    DisplayMetrics dm = new DisplayMetrics(); 
    getWindowManager().getDefaultDisplay().getMetrics(dm);
    device_value[index++] = dm.widthPixels + "x" + m.heightPixels;

    Display display = getWindowManager().getDefaultDisplay();
    String widthAndHeight = display.getWidth() + " x " + display.getHeight();

<uses-sdk android:minSdkVersion="3"  android:targetSdkVersion="3"/>
<supports-screens android:anyDensity="false" android:smallScreens="true" android:normalScreens="true" android:largeScreens="true"/>

它们都返回“320x569”,而真正的返回“640x960”。

4

2 回答 2

1

我相信这是因为您的目标或最低 SDK 版本正在激活屏幕兼容模式。您应该在清单中使用更高的最小值和目标 SDK 值。

于 2012-08-06T07:59:28.620 回答
1

关于如何获得真正分辨率的结论:

< uses-sdk android:targetSdkVersion="4"...

< supports-screens android:anyDensity="true"...

DisplayMetrics dm = new DisplayMetrics();
getWindowManager().getDefaultDisplay().getMetrics(dm);
String resolution = dm.widthPixels + "x" + m.heightPixels;
于 2012-08-08T00:48:21.230 回答