好的,我在UITabBarController中嵌入了UINavigationController。当选择标签栏项时,我会看到UITableView,它是NavController的根。选择表格中的项目会转到下一个视图(推送),我在该视图中设置该项目的值。点击Save Changes后,我将用户弹回到根控制器(表格视图)。但是,UITabBarItem已经从一种蓝色色调回到了默认的灰色色调。如果,在第二个屏幕中,我在NavBar中点击取消返回根,UITabBarItem很好,即仍然选中并着色为蓝色。
我尝试了几种方法,包括在viewWillAppear上设置TabBar的选定项目,以及尝试在UITabBarController本身中设置色调。似乎没有什么能解决这个问题。真正有趣的是,在UITableView的viewDidAppear(根视图)中,如果我将选中的TabBarItem的色调设置为蓝色,则生成的颜色为深灰色。
如果我在标签栏中选择另一个项目,然后再次选择第一个项目,则返回蓝色色调。它与弹出一个导致这种情况的根视图有关。
有没有人见过这个?有什么想法吗?
答案 0 :(得分:0)
如果viewWillAppear,viewDidLoad中有任何模态或弹出窗口(例如AlertView)(或在视图最终出现之前的任何时间),它将导致在弹出视图时改变色调。
检查你的第二个视图控制器是否有任何此类事情。