если стиль панели навигации — UIBarStyleDefault, стиль строки состояния будет UIStatusBarStyleDefault; если стиль панели навигации — UIBarStyleBlack, стиль строки состояния будет UIStatusBarStyleLightContent. В моем проекте стиль панели навигации — UIBarStyleBlack, но текст в UIStatusBar по-прежнему черный. Почему?
Текст в UIStatusBar не меняется на белый, если стиль панели навигации был UIBarStyleBlack.
Ответы (2)
я думаю, вы пропустили, чтобы добавить
View controller-based status bar appearance == no
в вашем списке, поэтому по умолчанию он выглядит черным для вашей строки состояния. убедитесь, что когда вы добавляете его в свой тип plist, он должен быть логическим.
person
Shubham bairagi
schedule
12.12.2015
в iOS 9 по умолчанию цвет строки состояния черный. Поэтому вам нужно сделать следующие вещи.
Если вы используете XIB, следуйте приведенному ниже коду.
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
{
self.window setFrame:[[UIScreen mainScreen] bounds]];
[UIApplication sharedApplication].statusBarStyle = UIStatusBarStyleLightContent;
[application setStatusBarHidden:NO];
self.viewController = [[ViewController alloc] initWithNibName:@"ViewController" bundle:nil];
UINavigationController *navController = [[UINavigationController alloc] initWithRootViewController:self.viewController];
[self.window setRootViewController:navController];
[navController setNavigationBarHidden:YES];
[self.window makeKeyAndVisible];
return YES;
}
Если вы используете StoryBoard, примените приведенный ниже код.
- (BOOL)application:(UIApplication *)application didFinishLaunchingWithOptions:(NSDictionary *)launchOptions
{
[UIApplication sharedApplication].statusBarStyle = UIStatusBarStyleLightContent;
[application setStatusBarHidden:NO];
return YES;
}
в вашем проекте-info.plist
View controller-based status bar appearance Boolean NO
Status bar is initially hidden Boolean NO
person
user3182143
schedule
12.12.2015