如何在Android中获得真正的显示尺寸

时间:2014-10-28 15:39:51

标签: java android

我尝试在Android中获得可观的大小(在Java类中)。 我使用了这些方法:

display.getSize(size);
display.getRealSize(size);

但两者都返回正确的宽度结果,但高度值为高。 有没有人提出建议,为什么我会得到错误的结果?

Gruß,Andre

3 个答案:

答案 0 :(得分:0)

尝试:

DisplayMetrics dm = getResources().getDisplayMetrics();
int w = dm.widthPixels
int h = dm.heightPixels

希望它有所帮助。

答案 1 :(得分:0)

您可以从DisplayMetrics class

获取有关屏幕的信息
    DisplayMetrics dm = new DisplayMetrics();
    getWindowManager().getDefaultDisplay().getMetrics(dm);
    int width = dm.widthPixels;
    int height = dm.heightPixels;

答案 2 :(得分:0)

这里有很好的记录http://developer.android.com/reference/android/view/Display.html

  

的getSize()

     

获取显示的大小(以像素为单位)。

     

此方法返回的大小不一定代表显示的实际原始大小(原始分辨率)。返回的大小   可以调整以排除某些系统装饰元素   始终可见。它也可以缩放以提供兼容性   较旧的应用程序,最初设计用于较小的显示器。

  

getRealSize()

     

获取显示的实际大小,而不减去任何窗口装饰   或应用任何兼容性比例因子。

     

根据显示器的当前旋转调整尺寸。

     

实际尺寸可能小于屏幕的物理尺寸   窗口管理器正在模拟一个较小的显示器(使用adb shell am   显示尺寸)。

我把重要的部分加粗了

相关问题