gpt4 book ai didi

iOS8 在不使用 UINavigationBar 的情况下更改状态栏颜色

转载 作者:行者123 更新时间:2023-11-29 02:00:40 26 4
gpt4 key购买 nike

我想在不显示 UINavigationBar 的情况下更改状态栏颜色。

setBarTintColor works fine if 
[self.navigationController setNavigationBarHidden:NO animated:NO];

但是我使用的是自定义控件,这意味着我必须设置

[self.navigationController setNavigationBarHidden:YES animated:NO];

这意味着状态栏颜色为白色。

如何在不显示 UINavigationBar 的情况下更改状态栏颜色?

最佳答案

如果我理解你的问题以下是如何更改每个 UIViewController

上的 UIStatusBarStyle

所以你需要将这些行添加到你的app-info.plist

1-

<key>UIStatusBarStyle</key>
<string>UIStatusBarStyleBlackTranslucent</string>
<key>UIViewControllerBasedStatusBarAppearance</key>
<false/>

在你的 viewController 中 -(void)viewDidLoad;调用以下

2-

[[UIApplication sharedApplication] setStatusBarStyle:UIStatusBarStyleLightContent];

然后声明这个选择器

3-

- (UIStatusBarStyle)preferredStatusBarStyle {
return UIStatusBarStyleLightContent;
}

4- 这是 UIStatusBarStyle 的列表

typedef NS_ENUM(NSInteger, UIStatusBarStyle) {
UIStatusBarStyleDefault = 0, // Dark content, for use on light backgrounds
UIStatusBarStyleLightContent NS_ENUM_AVAILABLE_IOS(7_0) = 1, // Light content, for use on dark backgrounds

UIStatusBarStyleBlackTranslucent NS_ENUM_DEPRECATED_IOS(2_0, 7_0, "Use UIStatusBarStyleLightContent") = 1,
UIStatusBarStyleBlackOpaque NS_ENUM_DEPRECATED_IOS(2_0, 7_0, "Use UIStatusBarStyleLightContent") = 2,
};

如果您正在谈论更改状态栏背景颜色,我认为您必须在此处查看答案 https://stackoverflow.com/a/21044718/1447546

关于iOS8 在不使用 UINavigationBar 的情况下更改状态栏颜色,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30429421/

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