【问题标题】:[UIScreen mainScreen].bounds vs [UIApplcation sharedApplication].keyWindow.bounds?[UIScreen mainScreen].bounds 与 [UIApplcation sharedApplication].keyWindow.bounds?
【发布时间】:2013-07-02 04:18:18
【问题描述】:

我认为我想覆盖整个屏幕。我想将其框架设置为覆盖整个屏幕。浏览堆栈溢出我发现了这两种不同的设置视图框架以覆盖屏幕的方式:

[UIScreen mainScreen].bounds
[UIApplcation sharedApplication].keyWindow.bounds

在我看来,它们总是返回相同的值,或者至少在我尝试过的几个测试用例中。

目前我正在使用UIScreen,但我很想知道这些调用之间的区别?在某些情况下它们会返回不同的值吗?

【问题讨论】:

    标签: ios bounds uiapplication uiscreen


    【解决方案1】:

    方法略有不同。 [UIScreen mainScreen] 返回设备 UIScreen 对象,其边界始终是设备屏幕的大小。 [UIApplication sharedApplication].keyWindow 返回应用程序的当前键 UIWindow,这可能不是设备屏幕的完整尺寸。

    另一个明显不同的情况是设备连接到多个屏幕。在这种情况下,[UIScreen mainScreen].bounds 将始终返回设备屏幕大小,但关键窗口可能位于其他屏幕之一上,并且它将具有完全不同的大小,具体取决于它所连接的屏幕类型。

    【讨论】:

      猜你喜欢
      • 2021-06-20
      • 1970-01-01
      • 2012-09-06
      • 2012-09-26
      • 1970-01-01
      • 2011-10-30
      • 1970-01-01
      • 2017-09-01
      • 2013-07-19
      相关资源
      最近更新 更多