在iOS8中,我想将状态栏文本(载体,时间,电池)的颜色设置为自定义颜色。
我已将View controller-based status bar appearance
设置为NO
,并在单个viewcontroller和app delegate中尝试了此代码:
[[UINavigationBar appearance] setTintColor:color_font];
和
[self.navigationController.navigationBar setBarTintColor:[UIColor greenColor]];
答案 0 :(得分:2)
在iOS8中,我想将状态栏(载波,时间,电池)的颜色设置为自定义颜色。
如果不使用私有API(Customize iOS 7 status bar text Color),目前无法做到这一点。您只能将状态栏的文本设为白色(UIStatusBarStyleLightContent
)或黑色(UIStatusBarStyleDefault
)。查看文档:
您可以在状态栏后面放置一个视图(按其他人的答案),但我认为这不是您所要求的。
答案 1 :(得分:0)
在AppDelegate中尝试这样做
UIView *addStatusBar = [[UIView alloc] init];
addStatusBar.frame = CGRectMake(0, 0, screenWidth, 20);
addStatusBar.backgroundColor = [UIColor grayColor]]; //assign here your color
[self.window.rootViewController.view addSubview:addStatusBar];
答案 2 :(得分:0)
转到你的app info.plist
1)将基于视图控制器的状态栏外观设置为NO
然后在项目AppDelegate
中的状态栏上添加Costom ViewUIView *statusBarViewObj = [[UIView alloc] init];
statusBarViewObj.frame = CGRectMake(0, 0, screenWidth, 20);
statusBarViewObj.backgroundColor = [UIColor orangeColor]];
[self.window.rootViewController.view addSubview:statusBarViewObj];
答案 3 :(得分:0)
创建一个视图,将其放在状态栏所在的位置,并将其背景颜色设置为所需的颜色。例如:
目标C:
String[] requestNos = selectedRequests
.stream()
.map(r -> r.getRequestNo())
.toArray(String[]::new);
夫特:
UIView *statusBarView = [[UIView alloc]initWithFrame:CGRectMake(0, 0,
[UIApplication sharedApplication].statusBarFrame.size.width,
[UIApplication sharedApplication].statusBarFrame.size.height)];
statusBarView.backgroundColor = [UIColor greenColor]; // Replace with color you desire
[self.view addSubview:statusBarView];