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;
谢谢
发布于 2014-03-14 04:29:52
而不是这个
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];
}
发布于 2015-08-17 02:33:25
在appDelagate.m中使用“外观”代理要容易得多。在您的didGinishLaunchingWithOptions方法中包括:
[UINavigationBar appearance].translucent = NO;
发布于 2019-06-04 02:54:41
Swift 4
navigationController!.navigationBar.isTranslucent = false;
https://stackoverflow.com/questions/22390061
复制相似问题