如何在iPhoneX中为顶部设置背景颜色

如何在iPhoneX中为顶部设置背景颜色

问题描述:

我刚刚意识到我的应用程序不适用于iPhoneX的设计。我有一个UIVIew(包含文本框和按钮)倾向于像导航栏,所以它支持iPhone 8和8 plus。但是,iPhoneX的顶部部分为空白。反之亦然,如果我将Uiview设置为导航栏,那么iphone8和8plus在文本框和顶部布局之间的差距会更大。我是否可以知道如何设置适合所有版本的约束或其他添加到顶部部分的方式,并且在横向模式下它也会更改。非常感谢!如何在iPhoneX中为顶部设置背景颜色

screenshot

+0

在整个应用程序,你的导航栏。所以,它显示完美。 – Jay

+0

界面构建器或代码? –

+0

我想有一个长的文本框,顶部的按钮像导航栏...但如果我使用导航栏,所以尺寸不适合所有... – Andrew

如果您使用的界面生成器,你可能需要更新您的约束和它们的设置。

if #available(iOS 11.0, *) { 
    if UIApplication.shared.keyWindow!.safeAreaInsets.top > CGFloat(0.0) { 
     topConstraint.constant += 24 
    } 
} 

enter image description here

+0

topConstraint是我的UIView的最高限制,当检测到iPhoneX? – Andrew

+0

这将是您的文本字段的限制。如果不相对于安全区域,其余的应该在最上面。并且整体高度应该增加 –

+0

嗨,请检查我在我的帖子中添加了截图,所以你的意思是我必须为UIview的顶部,textfield的顶部和我的按钮顶部放置顶部约束?增加24个像素? – Andrew