2014-11-04 86 views
0

我有一個UIViewController子類,當我在iOS 7上運行應用程序時,狀態欄顯示在我的視圖之上。有沒有辦法避免這種情況?我不希望狀態欄被隱藏。有沒有辦法顯示我的應用程序上方的狀態欄。我用presentViewController提出我的觀點。請指導我缺少的東西?狀態欄與我的視圖重疊

+0

試試這個http://stackoverflow.com/questions/25781169/how-to-fix-status-bar-overlap-issue-in-ios-7/25884064#25884064 – 2014-11-04 09:24:53

+0

可能重複的[狀態欄和導航酒吧出現在我的視圖的界限在iOS 7](http://stackoverflow.com/questions/17074365/status-bar-and-navigation-bar-appear-over-my-views-bounds-in-ios-7) – 2014-11-04 09:36:02

+0

我使用下面的代碼來降低我的視圖20 px down..it可以很好地處理縱向,但對於landscapeif失敗([[[UIDevice currentDevice] systemVersion] floatValue]> = 7){self.view.frame.origin .y == 0){ CGRect viewBounds = [self.view bounds]; viewBounds.origin.y = 20; viewBounds.size.height = viewBounds.size.height - 20; self.view.frame = viewBounds; } } – 2014-11-04 09:41:31

回答

0

這是很常見的問題。從iOS 7開始狀態欄是控制器視圖的一部分。 Apple甚至在Interface Builder中添加了UIView的特殊屬性:iOS 6/7 Deltas。要解決您的問題並使您的視圖在不同的iOS版本中看起來相同,請轉至大小檢查器並將Delta Y設置爲20.0。

+0

無法設置增量,因爲我在我的視圖上使用自動佈局 – 2014-11-04 09:38:37

+0

在這種情況下,您應該添加一個約束並根據iOS版本以編程方式更改其值。 – kelin 2014-11-04 14:00:27

+0

u能告訴我如何設置狀態欄上方我認爲編程的iOS 7使用自動佈局 – 2014-11-05 06:40:21

2

在Xcode中,故事板中有iOS6/7 delta的選項。將增量Y設置爲您視圖的20像素,以便與iOS7兼容。爲此,您必須禁用自動佈局,您可以使用自動調整大小。 see the attached image

+0

縱向和橫向的方向我想對我的看法自動佈局 – 2014-11-04 11:21:01

+0

對不起,我不希望在我看來 – 2014-11-05 06:40:49

+0

自動佈局我得到它錯過.. – 2014-11-05 06:41:33