页面加载后更改barTintColor

时间:2014-02-01 19:36:43

标签: ios objective-c ios7 uinavigationbar bartintcolor

我的应用中的每个视图都有不同的颜色。设置这种颜色效果很好。但是,当我按下到下一个视图(有自己的颜色)然后返回到上一个视图时...根视图有一个导航栏BarTintColor设置为我推送到的视图。

例如为:
Root view (红色)> About view (绿色)> (回到根)Root view (绿色)

如何在页面加载时设置barTintColor?我已经尝试使用- (void)viewWillAppear:(BOOL)animated,但它没有改变回来。

2 个答案:

答案 0 :(得分:2)

在每个视图控制器上,您可以使用viewDidAppear:方法中的以下代码:

    [self.navigationController.navigationBar setBarTintColor:[UIColor redColor]]; // Your Desired Color
    [self.navigationController.navigationBar setNeedsDisplay];

答案 1 :(得分:0)

也许使用其中一种Unwind Segue机制(比如在你的prepareForSegue中放置unwind segue:或者在你的展开发生之前使用委托并执行它......有意义还是我需要更深入?