navigationBar的背景色设置

本文介绍了如何在iOS中设置UINavigationController的背景色,强调必须对导航控制器本身设置barTintColor属性,而非tintColor,后者影响字体颜色。当设置无效时,建议检查代码并深入思考问题所在。

摘要生成于 C知道 ,由 DeepSeek-R1 满血版支持, 前往体验 >

导航栏的背景设置

1. 设置这个属性必须对UINavigationController的对象进行设置,不然是不会生效的。

2. 设置背景颜色的时候要注意这个属性是barTintColor,而不是tintColor,tintColor是设置导航栏上字体的颜色的。

3. 如果这样设置不行,看看下面,是不是也遇到了类似问题,静下来自己好好想一想,是哪里出现了问题。

做了一个小小的App,本来觉得没什么值得花费时间的东西,结果在设置navigationBar的背景色时候遇到了一个小问题,简单的问题,自己竟然被设置的顺序所迷惑,希望能给大家带来方便,分享一下自己的解决过程。
1. 我做的是一个小的app,类似于QQ那样,用一个tabbarController承载了三个navigationController,每一个navigationController的肉哦天 ViewController又是一个他罢了 ViewController,这些肯定都难不倒大家。这个时候我就开始设置navigationbar.barTintColor了。
2. 简单的直接来到了tableViewController里面,在- (id)initWithStyle:(UITableViewStyle)style方法里面就开始各种设置了,一切准备就绪当准备看一下效果的时候,意外出现了,竟然没用得到自己想要的结果。  遇到这样的问题,第一时间就是查看了一下官方的文档说明,文档显示也没什么问题 ,为什么就显示不出来呢??很是着急,就在各个方法里面设置,结果还是没用一点效果。
3. 遇到上面问题不要慌,需要静心想想自己有没有在哪里遗忘了,最后想到了,每次写self.navigationController.navigationBar.barTintColor = [UIColor redColor];
    self.navigationController.navigationBar.translucent = NO;
    这两行代码的时候,都是在tableViewController里面,所有这里的self也就是tableViewController了,就应该想想是不是这里出现了问题,想到这,就忽然意识到假如创建了navigationController之后,直接设置会不会出现需要的效果呢?想到了这里就直接在创建tabbarController的viewControllers的时候设置了navigationBar的barTintColor,然后就很期待的运行一下。。这样就可以成功设置navigationController.navigationBar.barTintColor了。
评论
添加红包

请填写红包祝福语或标题

红包个数最小为10个

红包金额最低5元

当前余额3.43前往充值 >
需支付:10.00
成就一亿技术人!
领取后你会自动成为博主和红包主的粉丝 规则
hope_wisdom
发出的红包
实付
使用余额支付
点击重新获取
扫码支付
钱包余额 0

抵扣说明:

1.余额是钱包充值的虚拟货币,按照1:1的比例进行支付金额的抵扣。
2.余额无法直接购买下载,可以购买VIP、付费专栏及课程。

余额充值