国产精品入口免费视频_亚洲精品美女久久久久99_波多野结衣国产一区二区三区_农村妇女色又黄一级真人片卡

IOS7上導航欄遮蓋狀態(tài)欄的問題

時間:2022-04-01 13:40:46 手機 我要投稿
  • 相關推薦

關于IOS7上導航欄遮蓋狀態(tài)欄的問題

  首先說明下,ios7中,由于status bar不再占用單獨的20px,如果app需要同時支持ios7和ios6.1以下,那就需要適配下了,適配開始:

  先看用xcode新建項目后 IOS7和IOS6上的的運行效果:

  ps:一個empty application 里面+了一個rootcontroller,作為window的根控制器,view里面放了一個tableview;

  是不是遇到的IOS7的新問題,狀態(tài)欄跟tableview重疊了,OK,看見這個不想看到的結果,下面我們就開始正式的解決掉這個招人不喜歡的效果。

  第一步:不要勾選xib中的Use Autolayout,如下圖:

  第二步:第二步:選擇View as “ios6.1 and Earlier”,還是上圖位置處;

  第三步:在Size Inspector中,有一ios6/7 Deltas:分別表示在PosX的增量、PosY的增量、寬度增量、高度增量。

  ps:在“ios6.1 and Earlier”模式下,由于status bar的高度為20,所以當app運行在ios7.0模式下時,需要view向下移動20像素,因此在ΔY上設置為20.

  tableView坐標向下移動了20,由于整個屏幕的高度是不變的,所以在“ios7.0 and Later”模式下,需要將tableView的高度減去20像素,即在“ios6.1 and Earlier”模式下,設置tableView的ΔHeight為 -20。如果不設置ΔHeight,tableView底部會有20像素是不可見的,可以測試demo看看。

  ***注***:Δ,正數(shù)表示增,負數(shù)表示減。

  第四步:ok,設置完成,到IOS上看效果:

  是不是神奇的發(fā)現(xiàn)跟以前的有似曾相識的趕腳呢。。。這樣“ios6.1 and Earlier”和“ios7.0 and Later” UI布局便統(tǒng)一了。

  另一種方法

  上面通過XIB的設置達到了狀態(tài)欄和view重合的問題,接下來我們講一講網(wǎng)傳的修改window frame方法。

  先上步驟:

  第一:在appdeletage里面 添加如下代碼:

  if ([[[UIDevice currentDevice] systemVersion] floatValue] >= 7.0) { self.window.frame = CGRectMake(0.0f,20.0f,self.window.frame.size.width,self.window.frame.size.height-20.0f); }

  2.在info.plist文件里面 屬性:View controller-based status bar appearance 值設為NO。

  下面看效果:

  在看下圖,你會發(fā)現(xiàn)一個問題:

  這是什么原因導致的呢?我發(fā)現(xiàn),由于window你又548變成了528吧,但是你發(fā)現(xiàn)tableview的高度還是548,導致了有20個像素不能顯示。那有的同學會說,直接改成528不就得了么,是的,可以改,改后你發(fā)現(xiàn)IOS7上確實沒有了缺像素的問題,但是在IOS6有直接缺半截,看下圖:

  所以呢,由我親自測試,這種方法想要適配IOS7和IOS6有點不太靠譜。

  最后解釋一下幾個名詞設置的作用:

  - (UIStatusBarStyle)preferredStatusBarStyle{ return UIStatusBarStyleLightContent;}- (BOOL)prefersStatusBarHidden{ return NO;}

  在plist中設置View controller-based status bar appearance 值設為YES..

  這些的作用是:基于controller,動態(tài)控制statusbar的隱藏與樣式。

【IOS7上導航欄遮蓋狀態(tài)欄的問題】相關文章:

iOS7狀態(tài)欄或懸浮窗怎樣顯示網(wǎng)速04-02

QQ輸入法如何設置狀態(tài)欄隱藏03-30

OPPO手機狀態(tài)欄顯示的HD圖標是什么03-26

電腦桌面下狀態(tài)欄不見了怎么辦07-20

如何在移動移動設備上修復ios7閃退問題03-30

win7系統(tǒng)桌面沒有圖標只有狀態(tài)欄怎么辦04-29

教你iOS7系統(tǒng)怎么調整Dock底欄顏色顯示04-01

iOS7平臺怎么調整Dock底欄顏色顯示04-03

電腦打字的時候輸入法不顯示狀態(tài)欄怎么辦08-15