加入收藏 | 设为首页 | 会员中心 | 我要投稿 李大同 (https://www.lidatong.com.cn/)- 科技、建站、经验、云计算、5G、大数据,站长网!
当前位置: 首页 > 百科 > 正文

iphone – 更改UINavigationItem颜色

发布时间:2020-12-14 19:12:39 所属栏目:百科 来源:网络整理
导读:我需要为我的UINavigationBar按钮设置自定义颜色. 我正在做以下事情(RGB func是一个定义): - (void)viewWillAppear:(BOOL)animated{for (UIView *view in self.navigationController.navigationBar.subviews) if ([[[view class] description] isEqualToStr
我需要为我的UINavigationBar按钮设置自定义颜色.
我正在做以下事情(RGB func是一个定义):

- (void)viewWillAppear:(BOOL)animated
{

for (UIView *view in self.navigationController.navigationBar.subviews)      
    if ([[[view class] description] isEqualToString:@"UINavigationButton"])
        [(UINavigationButton *)view setTintColor:RGB(22.0,38.0,111.0)];

 }

应用程序加载一切正常.离开视图后返回颜色返回默认值.

其次,我需要将相同的颜色设置为UISegmentedControl到按下的按钮.

解决方法

这是一种方式:

[[theNavigationBar.subviews objectAtIndex:1] setTitleColor:[UIColor redColor] forState:UIControlStateNormal];
[[theNavigationBar.subviews objectAtIndex:2] setTitleColor:[UIColor redColor] forState:UIControlStateNormal];

但是,巨大的,警告.这很可能在未来的操作系统版本中打破,不建议使用.

至少你应该进行大量的测试,并确保你对导航栏的子视图布局的假设是正确的.
要么
您可以通过更改UINavigationBar的tintColor属性来更改颜色

myBar.tintColor = [UIColor greenColor];

要么
您可以点击以下链接
??http://www.skylarcantu.com/blog/2009/11/05/changing-colors-of-uinavigationbarbuttons/

(编辑:李大同)

【声明】本站内容均来自网络,其相关言论仅代表作者个人观点,不代表本站立场。若无意侵犯到您的权利,请及时与联系站长删除相关内容!

    推荐文章
      热点阅读