导航栏背景颜色 - 半透明是没有
Posted
技术标签:
【中文标题】导航栏背景颜色 - 半透明是没有【英文标题】:Navigation bar background color - translucency is no 【发布时间】:2013-09-30 12:48:35 【问题描述】:我想将导航栏的背景颜色更改为纯绿色。
规则:我不能乱用 AppDelegate :)
我试过了:
//It's green but it's translucent
[self.navigationController.navigationBar setBackgroundColor:[UIColor colorWithRed:77/255.0 green:255/255.0 blue:100/255.0 alpha:1.0f]];
//It's white, first line has no effect
[self.navigationController.navigationBar setBackgroundColor:[UIColor colorWithRed:77/255.0 green:255/255.0 blue:100/255.0 alpha:1.0f]];
[self.navigationController.navigationBar setTranslucent:NO];
//Same result as case 1
[self.navigationController.navigationBar setAlpha:0.0f];
[self.navigationController.navigationBar setBackgroundColor:[UIColor colorWithRed:77/255.0 green:255/255.0 blue:100/255.0 alpha:1.0f]];
//Too dark
[self.navigationController.navigationBar setBarStyle:UIBarStyleBlackTranslucent];
[self.navigationController.navigationBar setBackgroundColor:[UIColor colorWithRed:77/255.0 green:255/255.0 blue:100/255.0 alpha:1.0f]];
//Only affects the back button's color:
[self.navigationController.navigationBar setTintColor:[UIColor greenColor]];
有什么想法吗?
谢谢,没看到还有 barTintColor 和 TintColor。接受最早的答复。
【问题讨论】:
你使用了故事板吗?然后选择 viewcontroller 并在模拟指标下的检查器中将顶部栏设置为不透明导航栏 【参考方案1】:在你的 viewController didLoad 方法中使用这行代码
self.navigationController.navigationBar.barTintColor = [UIColor colorWithRed:29.0f/255.0f green:149.0f/255.0f blue:174.0f/255.0f alpha:1.0f]
【讨论】:
【参考方案2】:用这个,
self.navigationController.navigationBar.tintColor=[UIColor colorWithRed:19.0/255.0f green:52.0/255.0f blue:36.0/255.0f alpha:1];
【讨论】:
【参考方案3】:使用导航栏的 barTintColor 属性
【讨论】:
【参考方案4】:请使用以下代码可能会对您有所帮助。
navController.navigationBar.barTintColor = [UIColor yourcolor];
【讨论】:
以上是关于导航栏背景颜色 - 半透明是没有的主要内容,如果未能解决你的问题,请参考以下文章
Flutter沉浸式状态栏/AppBar导航栏/仿咸鱼底部凸起导航