我尝试了不同的方法来获取设备的屏幕尺寸,但它总是返回错误的尺寸(791x480
代替854x480
)。可能是导航栏的原因。我的设备当前运行的是 JellyBean 4.1.1。
I tried:
Display display = getWindowManager().getDefaultDisplay();
Point size = new Point();
display.getSize(size);
OpenGLRenderer.widthScreen = size.x;
OpenGLRenderer.heightScreen = size.y;
And:
DisplayMetrics dm = new DisplayMetrics();
getWindowManager().getDefaultDisplay().getMetrics(dm);
String resolution = dm.widthPixels + "x" + dm.heightPixels;
我使用以下代码使应用程序全屏显示:
setContentView(mGLSurfaceView);
mGLSurfaceView.setSystemUiVisibility(View.SYSTEM_UI_FLAG_HIDE_NAVIGATION);
我注意到在 logcat 中,返回了正确的大小:
01-01 03:05:06.967: I/InputReader(1961):
Device reconfigured: id=8, name='cyttsp-spi',
surface size is now 480x854, mode is 1
In my AndroidManifest
:
uses-sdk android:minSdkVersion="8" android:targetSdkVersion="16"
I used:
- 获取冰淇淋三明治的真实屏幕分辨率 https://stackoverflow.com/questions/8566322/get-the-real-screen-resolution-on-ice-cream-sandwich
- HTC Sensation 真实分辨率 https://stackoverflow.com/questions/11824193/htc-sensation-real-resolution
- 获取屏幕尺寸(以像素为单位) https://stackoverflow.com/questions/1016896/android-how-to-get-screen-dimensions
为什么我无法获得实际尺寸(480x854
)?或者如何使用“设备重新配置”返回的表面?
尝试打电话
display.getRealSize();
免责声明:我没有意识到这一点,但这仅适用于 API 17 (Android 4.2/JellyBean) 及更高版本。
本文内容由网友自发贡献,版权归原作者所有,本站不承担相应法律责任。如您发现有涉嫌抄袭侵权的内容,请联系:hwhale#tublm.com(使用前将#替换为@)