如何修复 Swift 中 'keyWindow' 在 iOS 13.0 已弃用的警告?
大家好!我是一名 iOS 开发新手,正在用 Swift 编写应用。在更新 Xcode 并迁移到 iOS 13 后,我遇到了一个问题。以前我可以通过 `UIApplication.shared.keyWindow` 轻松访问应用的主窗口,但现在编译器给出了警告:
```
'keyWindow' was deprecated in iOS 13.0: Use UIWindowScene.windows on a relevant window scene instead
```
以下是我的代码,我使用 `keyWindow` 在整个界面之上显示加载指示器:
```swift
func showLoadingIndicator() {
if let window = UIApplication.shared.keyWindow {
let loadingView = UIView(frame: window.bounds)
loadingView.backgroundColor = UIColor.black.withAlphaComponent(0.5)
// 添加指示器
window.addSubview(loadingView)
}
}
```
在 iOS 13 模拟器上尝试使用 `keyWindow` 时,应用崩溃并报错。在新的 UIScene 架构中如何正确访问窗口?是否需要修改什么?