UINavigationBar 自定义颜色与在情节提要中嵌入 UInavigationController

Posted

技术标签:

【中文标题】UINavigationBar 自定义颜色与在情节提要中嵌入 UInavigationController【英文标题】:UINavigationBar custom color with Embeded UInavigatonController in storyboard 【发布时间】:2015-02-28 12:12:55 【问题描述】:

这是一个愚蠢的问题,但我真的很想知道,如何在我的默认 UINavigationBar 添加自定义颜色,它实际上是从 Editor 添加到我的 viewController > Embed in > NavigationController

我添加这个:

[[UINavigationBar appearance] setTintColor:[UIColor colorWithRed:244/255 green:119/255 blue:39/255 alpha:1.0]];

在我的AppDelegatdidFinishLaunchingWithOptions 中,但什么也没发生。谁能告诉我该怎么做? 提前非常感谢。

【问题讨论】:

【参考方案1】:

在您的视图控制器中将其添加到您的 viewDidLoad 方法中:

[[[self navigationController] navigationBar] setBarTintColor:[UIColor yourColor];

如果您的导航控制器是您的根视图控制器(故事板中的第一个视图控制器),您可以在应用委托中使用它:

[[(UINavigationController*)self.window.rootViewController navigationBar] setBarTintColor:[UIColor yourColor]];

【讨论】:

感谢您的评论。但我想从AppDelegate 开始,这样我就不必在每个viewController 中添加它。 你不必在每个视图控制器中都这样做,除非你想改变颜色。将该代码放入要显示的第一个视图控制器中。另一种方法是在 AppDelegate 中引用导航控制器 能否请您解释一下“您的导航控制器在 AppDelegate 中的引用”。

以上是关于UINavigationBar 自定义颜色与在情节提要中嵌入 UInavigationController的主要内容,如果未能解决你的问题,请参考以下文章

如何以编程方式设置 UINavigationbar 的背景颜色?

iOS 11 UINavigationBar 后退按钮图像颜色问题

如何为整个应用自定义 UINavigationBar?

自定义 iOS UINavigationBar/UITabBar 并移除 Tint Colors

如何设置自定义导航栏按钮颜色

iOS自定义状态栏背景颜色不显示