gpt4 book ai didi

iOS 7 UIStatusBarStyle 在应用程序启动 Bug 期间隐藏状态栏

转载 作者:可可西里 更新时间:2023-11-01 04:30:08 32 4
gpt4 key购买 nike

我正在更新我的应用程序以将导航栏的颜色从白色更改为蓝色。因此,我想将状态栏的颜色从黑色更改为白色。我已经尝试了 Apple 文档中的所有内容,这帮助我更改了 Storyboard 中所有 View Controller 的状态栏样式。

但是,我使用 presentViewController 推送到的任何 Nib 都不在我的 Storyboard中会自动更改 UIStatusBarStyle - 这是我的推送代码:

NSString *url = @"https://twitter.com/Example";
NSString *title = @"Example";
SocialWebViewController *addController = [[[SocialWebViewController alloc] initWithURL:url title:title] initWithNibName:@"SocialWebView_iPhone" bundle:nil];
UINavigationController *navigationController = [[UINavigationController alloc] initWithRootViewController:addController];
[self presentViewController:navigationController animated:YES completion:nil];

我已经在我的 AppDelegate 中放置了 UIStatusBar 首选样式,它可以工作,但仅适用于我的 StoryBoard 中的 ViewControllers:

- (UIStatusBarStyle)preferredStatusBarStyle {
return UIStatusBarStyleLightContent;
}

是的,我已经尝试过了:

(1) [[UIApplication sharedApplication] setStatusBarStyle:UIStatusBarStyleDefault];

(2) [self setNeedsStatusBarAppearanceUpdate];

(3) 在plist中设置UIViewControllerBasedStatusBarAppearance为YES

这些都不适用于那些不在我的 StoryBoard 中的 Nibs。

好吧,我明白了你们一直在说什么 - 将基于 View Controller 的状态栏外观设置为“否”对我不起作用,因为我的状态栏在应用程序启动期间最初是隐藏的,它一直隐藏着当我将 UIViewControllerBasedStatusBarAppearance 设置为“NO”时...我该如何解决这个问题?

最佳答案

在您的 *-Info.plist 文件中设置 key :

UIStatusBarStyle = UIStatusBarStyleLightContent
UIViewControllerBasedStatusBarAppearance = NO
UIStatusBarHidden = YES

然后在您的 AppDelegate 中将此行添加到方法 application:didFinishLaunchingWithOptions 中:

[[UIApplication sharedApplication] setStatusBarHidden:NO];

关于iOS 7 UIStatusBarStyle 在应用程序启动 Bug 期间隐藏状态栏,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/21057661/

32 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com