我试图使用这段代码获取安卓手机的屏幕分辨率
DisplayMetrics dm = new DisplayMetrics();
getWindowManager().getDefaultDisplay().getMetrics(dm);
str_ScreenSize = dm.widthPixels + " x " + dm.heightPixels;
str_ScreenSize = "dd" + " x " + dm.heightPixels;
当我在我的 Galaxy S 手机中尝试此代码时,我得到的屏幕分辨率为 320x533 像素,但实际上 Galaxy S 的屏幕分辨率为 480x800 像素。那么代码有什么问题呢??
如何获取特定设备的实际屏幕分辨率?
最佳答案
经过 2 天的搜索和测试,我终于找到了真正的问题所在。 以上所有编码都会给出正确的分辨率。但最重要的是,我们需要在 list 文件中提及目标 SDK。否则,如果密度大于 1,则会给出错误的结果。
<uses-sdk android:minSdkVersion="3" android:targetSdkVersion="8" />
需要将 targetSDK 版本设置为 4-9.. 希望这会帮助将来遇到同样问题的人。
关于Android:显示错误的屏幕分辨率,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/5078808/