iOS7下status bar相关问题的解决方法
生活随笔
收集整理的這篇文章主要介紹了
iOS7下status bar相关问题的解决方法
小編覺得挺不錯的,現在分享給大家,幫大家做個參考.
iOS7里status bar的實現跟iOS6下有寫不一樣,前段時間碰到了這個問題,今天總結下
首先網上有很多解決辦法,但是有些我覺得并沒有按照蘋果的思路來,比如把UIViewControllerBasedStatusBarAppearance在plist里設置為NO的方法,這個方法的確可行,但是并不是一個“正確”的思路,而且會有些問題,比如,當你在某個界面隱藏了status bar,退回到上一個界面時,status bar仍然是隱藏的
首先,蘋果把UIViewControllerBasedStatusBarAppearance默認的值設為YES,是有他的道理的,新系統下,蘋果希望我們的viewcontroller去控制status bar,也就是說,我們大多數的界面應該是統一的,偶爾一些viewcontroller需要status bar特殊控制的,完全交給當前的viewcontroller來做。
代碼,其中_isFullScreen需要你在調用setNeedsStatusBarAppearanceUpdate
之前設置好相應的值
#pragma mark - Status Bar- (UIStatusBarStyle)preferredStatusBarStyle {return UIStatusBarStyleDefault; }- (BOOL)prefersStatusBarHidden {return _isFullScreen; }- (UIStatusBarAnimation)preferredStatusBarUpdateAnimation {return UIStatusBarAnimationSlide; }
這樣,當你想要控制status bar的展現形式時(不需要動畫就去掉),只需要調用
[UIView animateWithDuration:.3 animations:^{if (ISIOS7) {[self setNeedsStatusBarAppearanceUpdate];}}];總結
以上是生活随笔為你收集整理的iOS7下status bar相关问题的解决方法的全部內容,希望文章能夠幫你解決所遇到的問題。
- 上一篇: linux 宕机 内存,Linux内存使
- 下一篇: Bootstrap -Card卡片