2017-03-23 13 views
0

setStatusBarStyleはiOS 10で廃止されました。スクロールビューをスクロールしながらステータスバーを白から黒に変更する方法はありますか?ステータスバーのスタイルを変更するスクロールビュー

UIViewControllerにはpreferredStatusBarStyleというプロパティがありますが、ユーザーがビューコントローラーを使用している間に制御できるように、もっと細かいものが必要です。

+0

この 'set Needs Status Bar Appearance Update()'を呼び出してみましたか? https://developer.apple.com/reference/uikit/uiviewcontroller/1621354-setneedsstatusbarappearanceupdat – kennytm

+0

この投稿をチェックするhttp://stackoverflow.com/questions/40059328/change-status-bar-color-in-real-time/40061614 #40061614 – Joe

答えて

2

preferredStatusBarStyleをオーバーライドし、必要なときにsetNeedsStatusBarAppearanceUpdate()を呼び出すと、同じ方法で動作するはずです。

class MyViewController: UIViewController { 

    var currentStyle = UIStatusBarStyle.default 

    override var preferredStatusBarStyle: UIStatusBarStyle { 
     return currentStyle 
    } 
    // ... 

    // here are the actions that change the status bar 
    func myFunction(){ 
     // ... 
     // condition that would determine the preferred style 
     currentStyle = .lightContent 
     setNeedsStatusBarAppearanceUpdate() 
    } 

} 
+0

ありがとうジョルジョ。感謝します –

関連する問題