2016-08-15 6 views
0

私はthis problemと同じ状況にあります。なんらかの理由で、ステータスバーはまだフェードインまたはフェードアウトしません。私はかなりこのウェブサイトに掲載されたすべてのソリューションを試してみました。Swift 2 prefersStatusBarHidden()呼び出されません

私はUINavigationController - >UIViewControllerを使用しています。

私はView controller-based status bar appearanceYESに設定しました。 ここに私のコードです:

var statusBarHidden = false 

func toggleStatusBarHidden() { 
    statusBarHidden = !statusBarHidden 
    setNeedsStatusBarAppearanceUpdate() 
} 

override func prefersStatusBarHidden() { 
    return statusBarHidden 
} 

override func preferredStatusBarUpdateAnimation() { 
    return .Fade 
} 

任意のアイデアなぜそれが事実であるかもしれませんか?

+0

iOS 10をターゲットにしていますか? http://stackoverflow.com/a/38902285/1166266 – Sirens

+0

私はSwift 3が 'func'の代わりに' var'を使うことを知っています – Altinio

答えて

1

私の問題を解明しました。私は、UIContainerViewに囲まれたビューコントローラ上でこの関数を作成しました。これらのメソッドを親View Controllerに移動する必要があります。

+2

右。 _rootビューのcontroller_のみが参照されます。 – matt

-1

同様の問題もありました。これは、iOSの9.0では非推奨となっていますが、まだ使用可能:

UIApplication.sharedApplication().setStatusBarHidden(true, withAnimation: .None) 

注:私はviewWillAppearまたはviewWillDissapearで、次の方法を使用して終了しました。

関連する問題