在Android中获取真正的屏幕尺寸

时间:2012-09-08 07:31:38

标签: java android screen-resolution

我知道使用DisplayMetrics获取“屏幕尺寸”的方法,但请注意SDK文档:

  

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

无论如何都要获得真正的屏幕尺寸?

1 个答案:

答案 0 :(得分:1)

它可能不是您的问题的答案,但是如果您的代码在其布局尚未布局时正在执行(例如在onCreate()中),那么知道如果您需要View的维度可能会很有用。你可以使用View.getViewTreeObserver()。addOnGlobalLayoutListener()设置一个ViewTreeObserver。OnGlobalLayoutListener,并在那里放置需要视图维度的相关代码。在布局布局时将调用侦听器的回调。

有关详细信息,请访问:ViewTreeObserver

但是对于一般的屏幕维度,我们使用DisplayMetrics本身,但忽略了SDK文档说明。