ayo*_*yon 4 objective-c uinavigationbar ios ios7
我有2个UIViewControllers.在第一个UIViewController,比方说ViewController1,我保持UINavigationBar隐藏.因为我的应用程序的主题是黑色,所以我需要白色UIStatusBar,iOS 7以便它不会变成黑色隐形UINavigationBar.为了变白,UIStatusBar我正在使用这种方法iOS 7.
UIViewControllerBasedStatusBarAppearance到YES在plist viewDidLoad做一个[self
setNeedsStatusBarAppearanceUpdate]; 添加以下方法:
-(UIStatusBarStyle)preferredStatusBarStyle{
return UIStatusBarStyleLightContent;
}
Run Code Online (Sandbox Code Playgroud)我在ViewController1时工作正常.但是当我移动到ViewController2时,如果我设置了
self.navigationController.navigationBarHidden = NO
Run Code Online (Sandbox Code Playgroud)
在我的viewDidLoad方法.然后上面的白色代码UIStatusBar不起作用.UIStatusBar变黑了,我看不到它,因为我使用以下代码来自定义我的UINavigationBar
self.navigationController.navigationBar.barTintColor = [UIColor blackColor];
self.navigationController.navigationBar.tintColor = [UIColor whiteColor];
self.navigationController.navigationBar.titleTextAttributes = [NSDictionary dictionaryWithObject:[UIColor whiteColor] forKey:UITextAttributeTextColor];
self.navigationController.navigationBar.translucent = NO;
Run Code Online (Sandbox Code Playgroud)
如果我UINavigationBar像ViewController1一样隐藏,那么白色UIStatusBar再次可见.但是当UINavigationBar可见时,状态栏再次变为黑色.那就是问题所在.
任何人都可以帮助我在这种情况下,我怎么能得到像我的ViewController1白色状态栏?提前致谢.
您是否尝试将此添加到两个视图控制器
-(UIStatusBarStyle)preferredStatusBarStyle{
return UIStatusBarStyleLightContent;
}
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
3516 次 |
| 最近记录: |