Android屏幕指标问题 - 高度,宽度,dpi和文本大小

时间:2011-07-20 04:58:33

标签: android

我有两个模拟器。如果我做了

DisplayMetrics dm = new DisplayMetrics();
getWindowManager().getDefaultDisplay().getMetrics(dm);

然后对于一个dm.densityDpi(和dm.xpdi和dm.ypdi)是160.景观模式中的dm.heightpixels是800.皮肤是标准的wxga,运行Android 3.1。

另一个模拟器的dm.densityDpi为240.在纵向模式下,dm.heightpixels也是800.皮肤是标准的wvga800,运行Android 2.3.3(以及具有相同规格的2.1.1)。

如果我有一个TextView电视,并执行:

tv.setTextSize(TypedValue.COMPLEX_UNIT_SP, 20);

在wxga横屏上,它显示正常。在wvga800纵向屏幕上,文字水平离开屏幕。屏幕太小,无法显示从上到下,而不是从左到右的所有结果。

这对我没有意义。当heightPixels对于两者都相同时,为什么具有较小dpi的模拟器能够显示更多文本?我会假设反过来也是如此。

2 个答案:

答案 0 :(得分:1)

仿真器上的Scaled密度设置不同。

答案 1 :(得分:0)

我也有同样的问题,试试这个你可以得到正确的答案 Screen Resolution Problem