iOS 状态栏背景与 UIAlertController 重叠

iOS status bar background overlaps UIAlertController

我的应用程序的主视图是嵌入在 UITabBarController 中的可滚动 UICollectionView。我没有使用导航栏,当用户滚动时,他会看到状态栏后面的单元格,因为状态栏没有背景。

我在我的 AppDelegate 中使用 UIApplication.shared.statusBarView?.backgroundColor = .white 来应用背景并使状态栏看起来像我想要的那样。

这很好用,但是当你展示 UIAlertController 时看起来不太好。

白色状态栏停留在变暗的背景之上。

是否有更好的方法将背景应用到状态栏或将其保留在 UIAlertController 背景之后?

您可以尝试在演示文稿的顶部使用带有背景色的 UIView UIView

状态栏的高度可以来自UIApplication.shared.statusBarFrame。并在收到 UIApplication.didChangeStatusBarFrameNotification.

时更新您的视图大小