我知道使用 获取“屏幕大小”的方法DisplayMetrics
,但正如 SDK 文档中的注释:
此方法返回的尺寸不一定代表显示器的实际原始尺寸(原始分辨率)。可以调整返回的大小以排除某些始终可见的系统装饰元素。它还可以扩展以提供与最初为较小显示器设计的旧应用程序的兼容性。
反正有没有得到真正的屏幕尺寸?
我知道使用 获取“屏幕大小”的方法DisplayMetrics
,但正如 SDK 文档中的注释:
此方法返回的尺寸不一定代表显示器的实际原始尺寸(原始分辨率)。可以调整返回的大小以排除某些始终可见的系统装饰元素。它还可以扩展以提供与最初为较小显示器设计的旧应用程序的兼容性。
反正有没有得到真正的屏幕尺寸?
它可能不是您问题的答案,但如果您需要一个视图的维度,因为您的代码在其布局尚未布局时正在执行(例如在 onCreate() 中),您可以设置带有ViewTreeObserver
View.getViewTreeObserver().addOnGlobalLayoutListener() 的 .OnGlobalLayoutListener 并将需要视图尺寸的相关代码放在那里。布局布局后,将调用侦听器的回调。
欲了解更多详情,请访问:ViewTreeObserver
但是对于一般的屏幕尺寸,我们使用DisplayMetrics
自己,但忽略了 SDK 文档说明。