Iphone 导航栏';s按钮的着色颜色有时未设置

Iphone 导航栏';s按钮的着色颜色有时未设置,iphone,Iphone,请参阅以下简短视频: 问题在于导航栏的“后退”按钮的颜色 我第一次加载应用程序时,导航栏及其按钮具有默认颜色。然后我在堆栈上推一个视图控制器,当新视图加载时(在viewDidLoad方法中),它将导航栏的色调设置为粉红色。导航栏的按钮也按预期为粉红色。 然后我按下后退按钮,视图从堆栈中弹出。在根视图控制器的VIEWWILLEXPENCE方法中,我将着色颜色设置回nil,使其再次成为默认颜色。导航栏看起来和预期的一样。但是,如果我再次按下堆栈上的视图控制器,则导航栏的色调为粉红色,而“后退”按钮的

请参阅以下简短视频:

问题在于导航栏的“后退”按钮的颜色

我第一次加载应用程序时,导航栏及其按钮具有默认颜色。然后我在堆栈上推一个视图控制器,当新视图加载时(在viewDidLoad方法中),它将导航栏的色调设置为粉红色。导航栏的按钮也按预期为粉红色。 然后我按下后退按钮,视图从堆栈中弹出。在根视图控制器的VIEWWILLEXPENCE方法中,我将着色颜色设置回nil,使其再次成为默认颜色。导航栏看起来和预期的一样。但是,如果我再次按下堆栈上的视图控制器,则导航栏的色调为粉红色,而“后退”按钮的颜色为默认的浅蓝色。 希望这是可以理解的


那么问题的原因是什么呢?

您是否尝试将代码放在要推送到堆栈上的控制器的viewWillExample方法而不是viewDidLoad方法中

其他猜测,在弹出控制器并显示根控制器时,您是否尝试将颜色设置为除nil以外的其他颜色?

示例项目:

错误似乎发生在3.0设备/模拟器上。不适用于2.2.1。 在这上面浪费了这么多时间


当我升级到SDK 4时,错误报告已经存档(7001347)

这神奇地修复了它本身。

是的,已经尝试了这两种方法的所有组合,但问题仍然存在。是的,即使我将根视图控制器设置为实际颜色而不是零,也会发生这种情况。