iPhone-X 中导航栏上的透明黑色阴影

问题描述 投票:0回答:1
我已将应用配置为支持 Notch Screen 设备 在 iPhone X 模拟器中运行我的应用。

应用程序在普通视图中运行良好,但如果我有导航控制器则不会使用全屏空间

一个奇怪的透明黑色阴影出现在导航栏上

有人帮我解决这里发生的事情以及如何解决这个问题吗?我在 Interface Builder 中找不到任何新设置。

ios swift objective-c xcode ios11
1个回答
0
投票
尝试设置状态栏背景颜色与导航控制器颜色相同,添加此扩展:

extension UINavigationController { func setStatusBar(backgroundColor: UIColor) { let statusBarFrame: CGRect if #available(iOS 13.0, *) { statusBarFrame = view.window?.windowScene?.statusBarManager?.statusBarFrame ?? CGRect.zero } else { statusBarFrame = UIApplication.shared.statusBarFrame } let statusBarView = UIView(frame: statusBarFrame) statusBarView.backgroundColor = backgroundColor view.addSubview(statusBarView) } }
现在在 viewDidLoad 调用中:

navigationController?.setStatusBar(backgroundColor: .yourColor)
    
© www.soinside.com 2019 - 2024. All rights reserved.