2014-10-02 76 views
6

我一直在增加狀態欄的控制檯窗口on top:通過設置其windowLevelUIWindowLevelStatusBar + 1最多的iOS窗口與UIWindowLevelStatusBar + 1隱藏狀態欄上的iOS 8

enter image description here

這已經偉大的工作7.x(截圖)。

在iOS 8上,相同的代碼會使狀態欄消失並偏移導航欄。我嘗試了幾個不同的窗口級別,沒有運氣。

我在許多項目中使用了庫,並注意到當顯示UIWindowLevelAlert級別的「PopUpWindow」時,狀態欄也顯示出來。 所以一個可能的解決方案是在那裏添加一個模擬窗口,但這將是簡單的骯髒。

+0

如果您將級別設置爲「StatusBar」+ 1,它應該覆蓋狀態欄。您特別將級別設置爲高於狀態欄。 – rmaddy 2014-10-02 04:32:24

+0

是的。這就是我想要做的。狀態欄仍然存在,您仍然可以「點擊滾動到頂部」的區域,更重要的佈局和導航欄可以正確定位。然而,這與iOS 8打破。 – Rivera 2014-10-02 05:33:38

回答

6

嘗試在UIWindow的根視圖控制器上實現-prefersStatusBarHidden方法。爲我工作。

+0

嗯,它的工作表示感謝!因爲默認實現已經返回「NO」,所以超出意料之外。 – Rivera 2014-11-04 01:44:53

+0

即使鍵和statusBar + 1窗口的rootViewController的首選項StatusBarHidden被覆蓋以返回NO – burax 2016-01-01 20:54:49

+0

Aaand,我也不會在iOS9上爲我工作。我的問題是狀態欄下方的黑色背景。添加一個新窗口將狀態欄顏色改爲黑色,看起來好像它消失了。實現'preferredStatusBarStyle'修復了這個問題。 – burax 2016-01-02 11:46:55