2017-10-12 144 views
6

我無法正確地將iPhone X上的視圖限制在底部不透明工具欄上方。iPhone X安全區出現在不透明工具欄下方

你可以在這裏看到,約束到安全區域底部的視圖是由工具欄遮擋:

iPhone X screenshot

而對於其他iPhone型號和尺寸的看法是正確的工具欄上顯示:

iPhone SE storyboard screenshot

下面是我添加的約束:

Constraints

有人可以善意解釋我該怎麼辦?

+0

看到這可能會幫助你https://stackoverflow.com/questions/46441988/autoresizing-for-iphone-x/46442867#46442867 –

回答

6

我選擇解決問題的問題「擴展邊緣下面不透明條」,爲的UIViewController:

使用選項啓用: IB extend edges ticked

禁用選項: IB extend edges unticked

另一種選擇是使用半透明的工具欄,如@Silmaril提到的在另一個問題的答案。

+0

你確定你沒有改變你的工具欄樣式爲半透明嗎?因爲當工具欄不是半透明的時候,我仍然可以重現你的bug。這意味着啓用「在不透明酒吧下擴展邊緣」不是一個解決方法 – Silmaril

0

使用大小以適合內容⌘(+)= enter image description here

3

這絕對是iOS的錯誤。

嘗試使用半透明工具欄,因爲工具欄半透明時,錯誤不可重現。

其他選項以添加工具欄directly on view controller

+0

安全區域的頂部是屏幕的頂部,所以標籤將在下方對齊狀態欄。不過,我需要標籤在底部。 –

+0

哦,對不起。我在腦海中混淆了安全區域和佈局指南。順便說一句,我只是沒有看到你的屏幕截圖上的工具欄。我剛剛嘗試從「單一視圖應用程序」模板創建測試項目。我在iPhone X上沒有問題。屏幕截圖上的黑色區域是什麼?我沒有他們 – Silmaril

+0

看起來像你使用模擬指標。在這種情況下,這只是Interface Builder的缺陷。嘗試在呈現真實工具欄時在iPhone X模擬器上運行您的應用程序。如果沒有其他錯誤(這次是iOS中的錯誤),您不應該遇到這個問題 – Silmaril