1

好的,所以,我在 UITabBarController 中嵌入了 UINavigationController。选择标签栏项目时,我会向我介绍NavController的根源。在表中选择一个项目会将我带到下一个视图(推送),在该视图中我为该项目设置值。点击保存更改后,我将用户弹出回根控制器(表格视图)。但是,UITabBarItem 已从蓝色调变回默认的灰色调。如果在第二个屏幕中,我在 NavBar 中点击取消以返回根目录,则 UITabBarItem 很好,即仍然被选中并染成蓝色。

我尝试了几种方法,包括在 viewWillAppear 上设置 TabBar 的选定项目以及尝试在 UITabBarController 本身中设置色调。似乎没有什么可以解决这个问题。真正有趣的是,在 UITableView 的 viewDidAppear(根视图)中,如果我将选定的 TabBarItem 的色调设置为蓝色,则结果颜色为深灰色。

如果我在选项卡栏中选择另一个项目,然后再次选择第一个项目,蓝色色调会返回。它与弹回导致此问题的根视图有关。

有人见过这个吗?有什么想法吗?

4

1 回答 1

0

如果您在 viewWillAppear、viewDidLoad(或视图最终出现之前的任何时间)中有任何模式或弹出窗口(例如 AlertView),则会导致在弹出视图时改变色调。

检查你的第二个视图控制器是否有任何这样的东西。

于 2014-10-29T05:46:14.200 回答