Ios iPhone X:不安全区域不存在';我看不到近景的颜色
我的应用程序是用自定义顶栏而不是Ios iPhone X:不安全区域不存在';我看不到近景的颜色,ios,autolayout,iphone-x,safearealayoutguide,Ios,Autolayout,Iphone X,Safearealayoutguide,我的应用程序是用自定义顶栏而不是UINavigationBar构建的,以满足一些使用默认UINavigationBar无法轻松完成的要求,但是,在阅读了的答案并更改了此顶栏的3个约束条件(顶、前导和尾随)后为了相对于安全区域而不是superview,我无法使安全区域自动着色以匹配顶部栏的颜色,下面是它现在的样子: 上面链接中的第一个答案建议手动为状态栏上色,但不幸的是,这是不合理的,它使用私有API来实现。第二个答案建议为主视图提供背景色,但这也是不合理的,因为我需要为主视图提供不同的颜色 我
UINavigationBar
构建的,以满足一些使用默认UINavigationBar
无法轻松完成的要求,但是,在阅读了的答案并更改了此顶栏的3个约束条件(顶、前导和尾随)后为了相对于安全区域而不是superview,我无法使安全区域自动着色以匹配顶部栏的颜色,下面是它现在的样子:
上面链接中的第一个答案建议手动为状态栏上色,但不幸的是,这是不合理的,它使用私有API来实现。第二个答案建议为主视图提供背景色,但这也是不合理的,因为我需要为主视图提供不同的颜色
我如何让不安全区域根据最近的视图(通过自动布局约束连接到该视图)自行着色?以下是iPhone X上的安全区域布局示例 如果希望“不安全顶部区域”的颜色与最近的视图颜色相同,则有两种逻辑选择 通过使用两个视图,一个位于顶部,具有与超级视图相关的顶部约束(根据故事板上的SafeAreaLayout激活),另一个位于后者的正上方,其顶部约束链接到顶部安全区域。之后,将它们链接到viewcontroller,并将颜色管理到viewDidLoad方法中 如果只使用一个视图,则另一种选择可能更容易。将其顶部、前导和尾随约束设置为超级视图(而不是安全区域布局)。要避免界面生成器错误,请为视图设置固定高度 现在应该可以正常工作了