barTintColor
默认情况下,此颜色为半透明,除非您将半透明属性设置为NO。
那么为什么我的代码会生成不透明的导航栏?
self.navigationController.navigationBar.barTintColor = [UIColor colorWithRed:0/255.0f green:119/255.0f blue:255/255.0f alpha:1.0f];
我尝试添加这个以防万一,但没有运气。
self.navigationController.navigationBar.translucent = YES;
由于
答案 0 :(得分:1)
而不是这个
self.navigationController.navigationBar.barTintColor = [UIColor colorWithRed:0/255.0f green:119/255.0f blue:255/255.0f alpha:1.0f];
为什么不尝试设置背景颜色
self.navigationController.navigationBar.backgroundColor = [UIColor colorWithRed:0/255.0f green:119/255.0f blue:255/255.0f alpha:1.0f];
酒吧是半透明的:)
根据您的需要。这将为导航栏提供纯色
NSArray *ver = [[UIDevice currentDevice].systemVersion componentsSeparatedByString:@"."];
if ([[ver objectAtIndex:0] intValue] >= 7) {
self.navigationController.navigationBar.barTintColor = [UIColor redColor];
self.navigationController.navigationBar.translucent = NO;
}else {
self.navigationController.navigationBar.tintColor = [UIColor redColor];
}
答案 1 :(得分:0)
更容易使用"外观" appDelagate.m中的代理。在你的didGinishLaunchingWithOptions方法中包括:
[UINavigationBar appearance].translucent = NO;
答案 2 :(得分:0)
雨燕4
navigationController!.navigationBar.isTranslucent = false;