Avatar ·

如何在Swift中获取iOS设备的屏幕尺寸?

大家好!我是iOS开发新手,使用Swift时在尝试获取设备屏幕尺寸时遇到了问题。我需要根据不同屏幕尺寸(如iPhone SE、iPhone 12、iPad等)适配界面,但不知道如何正确实现。 我尝试了几种方法,但要么返回错误值,要么完全不起作用。以下是我尝试过的代码: ```swift let screenSize = UIScreen.main.bounds.size print("Screen size: \(screenSize)") ``` 这段代码似乎能工作,但我读到`UIScreen.main`在某些情况下可能已过时或不可靠。我还听说需要考虑safe area和navigation bar,但不知道它们如何影响屏幕尺寸。 另外,我尝试使用`UIApplication.shared.keyWindow?.bounds`,但有时返回nil。 请问在Swift中获取iOS设备屏幕尺寸最可靠且现代的方法是什么?是否需要考虑设备方向?如何正确处理?