2017-10-06 409 views
0

我剛剛意識到我的應用程序不適用於iPhoneX的設計。我有一個UIVIew(包含文本框和按鈕)傾向於像導航欄,所以它支持iPhone 8和8 plus。但是,iPhoneX的頂部部分爲空白。反之亦然,如果我將Uiview設置爲導航欄,那麼iphone8和8plus在文本框和頂部佈局之間的差距會更大。我是否可以知道如何設置適合所有版本的約束或其他添加到頂部部分的方式,並且在橫向模式下它也會更改。非常感謝!如何在iPhoneX中爲頂部設置背景顏色

screenshot

+0

在整個應用程序,你的導航欄。所以,它顯示完美。 – Jay

+0

界面構建器或代碼? –

+0

我想有一個長的文本框,頂部的按鈕像導航欄...但如果我使用導航欄,所以尺寸不適合所有... – Andrew

回答

0

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

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