前言:
iOS 15.0
当适配在15.0以上时,会出现这么一个警告
解决办法、亲测有效
///状态栏高度
public var K_StatusHeight: CGFloat {
get {
let keyWindow = UIApplication.shared.connectedScenes
.map({ $0 as? UIWindowScene })
.compactMap({ $0 })
.first?.windows.first
let statusBar = keyWindow?.windowScene?.statusBarManager?.statusBarFrame
return statusBar?.size.height ?? 20.0
}
}
当然,如果你的适配登记低于15.0也可以这么用
public var K_StatusHeight: CGFloat {
get {
if #available(iOS 13.0, *) {
let keyWindow = UIApplication.shared.connectedScenes
.map({ $0 as? UIWindowScene })
.compactMap({ $0 })
.first?.windows.first
let statusBar = keyWindow?.windowScene?.statusBarManager?.statusBarFrame
return statusBar?.size.height ?? 20.0
} else {
return UIApplication.shared.statusBarFrame.size.height
}
}
}
当然,这里只是发现一个警告⚠️提示,并未发现其他什么问题