0

내 문제는 iPhone 6 Plus에서 바 색조 색을 설정할 수 없다는 것입니다. 다른 모든 장치의 경우 바 색조를 설정할 수 있지만 iPhone 6의 경우 바 색조는 변경되지 않습니다. 뷰 컨트롤러의 코드는 다음과 같습니다. 또한이 VC는 탐색 컨트롤러에서 스택으로 푸시됩니다. 어떤 도움이라도 대단히 감사합니다.iPhone 6에서 bartintcolor를 설정할 수 없습니다.

override func viewWillAppear(animated: Bool) { 
     super.viewWillAppear(animated) 
     navigationController?.navigationBar.barTintColor = .redColor() 
     navigationController?.navigationBar.translucent = false 
     navigationController?.navigationBar.titleTextAttributes = [NSForegroundColorAttributeName: UIColor.whiteColor()] 
     navigationController?.navigationBar.tintColor = UIColor.whiteColor() 
    } 

이것은보기 컨트롤러에서 수행하는 작업이며 전혀 작동하지 않습니다.

+0

잘 작동한다고 생각합니다. 기기 또는 시뮬레이터에서 테스트하고있는 곳은 어디입니까? –

+0

장치에서 테스트 중입니다. iPhone 6 plus, iPhone 5 및 iPhone 5에서. – WikipediaBrown

+0

시뮬레이터에서 제대로 작동합니까? –

답변

0

좋아, 그래서 문제를 해결했습니다. 어떤 이유로 iPhone 6 Plus는 새보기 컨트롤러가 탐색 스택에 푸시 될 때마다

override func viewWillLayoutSubviews() { 
    super.viewWillLayoutSubviews() 
    navigationController?.navigationBar.barTintColor = .primaryGrayColor() 
    navigationController?.navigationBar.translucent = false 
    navigationController?.navigationBar.titleTextAttributes = [NSForegroundColorAttributeName: UIColor.blackColor()] 
} 

을 호출합니다. 이것은 iPhone 5, iPhone 5s, iPhone 6 또는 iPhone 7에서는 발생하지 않습니다.