自从苹果在UIViewControllerBasedStatusBarAppearance 7中引入了preferredStatusBarStyle和iOS 7之后,我试图了解什么是改变内置视图控制器状态栏颜色的最佳实践,比如:
UIImagePickerController
MFMailComposeViewController
UISearchDisplayController 例如,在使用UISearchDisplayController时,当搜索栏出现时,我希望将状态栏从光更改为黑暗。
我怎么能这么做?我需要子类UISearchDisplayController吗?也许是类别?
那么UIImagePickerController有它自己的视图控制器栈呢?在呈现照片选择器时,如何更改所有这些控件的状态栏样式?
直到现在,我使用了全局为什么
[[UIApplication sharedApplication] setStatusBarStyle:UIStatusBarStyleLightContent animated:YES]; 但是现在采用的是全视点控制器方法,那么我将如何修改非我的控制器呢?
发布于 2014-12-03 11:00:00
是的,您可以对这些类进行子类以更改状态栏外观。根据UIImagePickerController,它只是UINavigationController的一个子类,因此,如果您在子类中实现了preferredStatusBarStyle,那么导航中出现的所有其他视图都将具有相同的状态栏。祝好运!
https://stackoverflow.com/questions/27269328
复制相似问题