1. 程式人生 > >iOS狀態列設定詳解!

iOS狀態列設定詳解!

- (UIStatusBarStyle)preferredStatusBarStyle
{
    ViewController *vc = self.topViewController;
    return [vc preferredStatusBarStyle];
}

- (UIViewController *)childViewControllerForStatusBarStyle
{
    return self.topViewController;
}

完成上面的自定義後,只要在當前的Viewcontroller裡面實現

preferredStatusBarStyle方法,設定好想要的狀態列顏色,然後在需要變更的地方呼叫

[selfsetNeedsStatusBarAppearanceUpdate];

(這個方法會通知系統去呼叫當前UIViewControllerpreferredStatusBarStyle方法)這個和UIViewsetNeedsDisplay原理差不多(呼叫UIView物件的setNeedsDisplay方法後,系統會在下次頁面重新整理時,呼叫重繪該view,系統最快能1秒重新整理60次頁面,具體要看程式設定),

下面在進行分情況的討論