独立更改导航栏的颜色

时间:2015-06-17 15:16:00

标签: ios swift uinavigationbar

在开始之前,请知道我已阅读了有关该主题的大量StackOverflow帖子,但我还是无法弄清楚如何将多个答案应用于我的具体方案。

在我的故事板中,我有一个带有嵌入式导航控制器的表视图,以及带有嵌入式导航控制器的另一个表视图的segue。基于我的应用程序的设计,我正在寻找第一个表视图中的导航栏,使其具有与我的第二个表视图中的导航栏不同的背景(色调)颜色。这是我的布局;

Multiple Navigation Controllers

根据以上所述,我将第一个导航控制器栏的颜色设置为绿色,将第二个导航控制器的颜色设置为蓝色。但是,当我构建并运行应用程序时,第二个表视图有一个绿色导航控制器,而我在Interface Builder中将其设置为蓝色。

我尝试在SecondTableViewController.swift文件中使用以下代码;

navigationController.navigationBar.barTintColor = UIColor.blueColor() self.navigationBar.tintColor = UIColor.blueColor()

这可能吗?或者我误解了导航控制器的工作原理?

1 个答案:

答案 0 :(得分:2)

要将所有UINavigationBar实例一次设置为相同颜色,请执行以下操作:

  SELECT t.username, t.points
    FROM mytable t
   ORDER BY t.points DESC, t.username DESC
   LIMIT 4,6

要设置每个实例(根据需要),请尝试以下方法:

UINavigationBar.appearance().barTintColor = UIColor.greenColor()