我有一个控制器,它选择2个segue中的一个并立即在viewDidAppear:
执行它们。其中一个导致UINavigationController,另一个导致UITabBarController,它们都实现preferredStatusBarStyle
。
在某些时候,用户可以打开一个覆盖控制器来检查所呈现的视图控制器并复制preferredStatusBarStyle
我的问题是我永远无法显示当前的视图控制器。我使用下面的代码来获取当前的控制器,但它始终返回显示的第一个控制器(故事板根视图控制器),而不是当前控制器。
internal override func preferredStatusBarStyle() -> UIStatusBarStyle {
if let rootViewController = UIApplication.sharedApplication().delegate?.window??.rootViewController {
return rootViewController.preferredStatusBarStyle()
} else {
return .Default
}
}
我做错了吗?