UIApplication 键窗口“安全区域布局指南”不包括选项卡栏和导航栏

UIApplication key window 'safe area layout guide" excludes tab bar & navigation bar

提问人:iqra 提问时间:12/3/2020 更新时间:12/3/2020 访问量:265

问:

我正在尝试在视图控制器的顶部和底部显示 toast 视图。但是,“安全区域布局”指南既不包括导航栏,也不包括底部的选项卡栏。包括状态栏。我想在导航栏下方显示 Toast 视图。

Nav bar not included in safe area

这是我的代码:

guard let rootView = UIApplication.shared.windows.filter({$0.isKeyWindow}).first else {return}
        

let toastView = ToastView(title: title, message: message, type: type)
toastView.translatesAutoresizingMaskIntoConstraints = false

rootView.addSubview(toastView)

NSLayoutConstraint.activate([
                    toastView.centerXAnchor.constraint(equalTo: rootView.centerXAnchor),
                    toastView.leadingAnchor.constraint(greaterThanOrEqualTo: rootView.leadingAnchor, constant: 20),
                    toastView.topAnchor.constraint(equalTo: rootView.safeAreaLayoutGuide.topAnchor, constant: 0)
])
Swift UINuageBar UITabbar SafeAreaLayoutGuide KeyWindow

评论

0赞 matt 12/3/2020
该窗口不是强加导航控制器或选项卡栏控制器的安全区域的位置。该窗口位于层次结构中的这些控制器上方。它们在层次结构中向下施加安全区域。
0赞 matt 12/3/2020
因此,不要使用窗口,而是使用窗口的根视图控制器的视图,看看它是否效果更好。

答: 暂无答案