ios7對於 狀態列有很大的改變
舊的程式碼為
[[UIApplication sharedApplication] setStatusBarHidden:YES withAnimation:UIStatusBarAnimationSlide];
不過在ios7中這個方法已經無法work了
解決方法1.
到infor.plist中 加入 key: UIViewControllerBasedStatusBarAppearance設置為no
這樣就告訴系統說 status bar 不依賴 UIViewcontroller.
解決方法2.
- (UIStatusBarStyle)preferredStatusBarStyle
{
return UIStatusBarStyleLightContent;
//UIStatusBarStyleDefault = 0 黑色文字,浅色背景时使用
//UIStatusBarStyleLightContent = 1 白色文字,深色背景时使用
}
上面的code是控制顯示時的樣式,下面的code是控制是否顯示status bar
調用以下的code 會觸發上面的code
- (BOOL)prefersStatusBarHidden
{
return NO; //返回NO表示要显示,返回YES将hiden
}
[self setNeedsStatusBarAppearanceUpdate];
如果想加入動畫如下:
[UIView animateWithDuration:0.5 animations:^{
[self setNeedsStatusBarAppearanceUpdate];
}];
參考文獻:http://www.ifun.cc/blog/2013/09/28/ios7yin-cang-status-bar/
0 意見:
張貼留言