2015-12-21 128 views
0

我想讓我的狀態欄和半透明導航欄「統一」,這是iOS 7及以上版本的標準外觀。不過,我有很多導航控制器,視圖控制器和一個標籤欄控制器,擁有所有的視圖控制器等,一切都搞砸了。無論我嘗試,我無法擺脫這個樣子的:爲什麼狀態欄與半透明導航欄混淆

enter image description here

狀態欄不「合併」與導航欄。問題是不是的顏色,當狀態欄文本是黑色時它仍然不合並。我試着將基於視圖控制器的狀態欄設置更改爲兩個值,無濟於事。

我該如何讓它們合併?

更新:我有一個很奇怪的觀察。我試圖盡我所能關於佈局引導和約束,我已經嘗試了viewWillAppear:去除頂部佈局引導代碼:

for (NSLayoutConstraint *constraint in self.view.constraints) { 
    if(constraint.firstItem == self.topLayoutGuide && constraint.secondItem == nil){ 
     //constraint.constant = -20; 
     [self.view removeConstraint:constraint]; 
     break; 
    } 
} 

突然,我的狀態欄開始顯示完全理所應當的,統一與狀態酒吧。但是現在我的視圖控制器中沒有顯示任何內容,顯然,這不是一個解決方案。但它似乎確實與頂層佈局指南有關。

+0

導航欄樣式是否設置爲亮? – ShahiM

+0

@ShahiM如果你的意思是狀態欄的風格,是的。但正如我所說的,無論是輕量還是默認都不重要,只有文本顏色發生變化,而不是背景。 –

+0

您是否檢查故事板是否在頂部酒吧下,在底部酒吧檢查? – IOSCODER

回答

1

我剛剛想出了一切。我的「主控」控制器已將所有內容嵌入到嵌入式視圖控制器中,並且它與頂部佈局指南「0」的頂部間距相同。但是,它是20px,所以我將約束更改爲「-20」。這看起來有點冒險,但它只是修復了一切,並沒有搞砸任何東西。