仅为特定子视图控制器设置UINavigationBar的tintColor

Mar*_*ark 5 uinavigationbar uinavigationcontroller tintcolor ios

我有一个基本的主 - 细节应用程序.根据在主列表中选择的项目,我只想tintColor在详细信息视图中设置导航栏.

我设置了这样的色调颜色:self.navigationController.navigationBar.tintColor = detailTintColor;viewWillAppear:细节控制器中.

但是,这也会将主控制器导航栏的颜色更改为黄色(应保持红色),这在过渡动画期间可见为闪烁.我假设因为只有一个导航栏实例.

这里有一个截图来说明问题:

  • "i"图标位于主视图控制器的导航栏中,应为红色,而不是黄色

在此输入图像描述

Ash*_*ish 2

在 iOS 8 中,我们通过以下方式设置色调颜色:-

self.navigationController.navigationBar.barTintColor = [UIColor redColor];
Run Code Online (Sandbox Code Playgroud)