2016-08-15 3 views
0

나는 this problem과 같은 상황에 있습니다. 어떤 이유로 인해 상태 표시 줄이 여전히 페이드 인 또는 페이드 아웃되지 않습니다. 나는 거의 모든 웹 사이트에 게시 된 솔루션을 시도했습니다.신속한 2 선호도 상태 숨겨진() 호출되지 않음

나는 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로 묶인 뷰 컨트롤러에서이 함수를 만들었습니다. 부모 뷰 컨트롤러로 그 메소드를 옮겨야한다.

+2

맞습니다. _root보기 controller_ 만 참조됩니다. – matt

-1

같은 문제가있었습니다.

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

참고 : 나는 viewWillAppear 또는 viewWillDissapear에 다음과 같은 방법을 사용하여 결국 그것은 아이폰 OS 9.0에서 사용되지 않는,하지만 여전히 사용할 수 있습니다.

관련 문제