UITabBarController 子视图控制器重置 -Swift2 iOS
UITabBarController child view controller reset -Swift2 iOS
我有一个带有 2 个选项卡的 tabBarController:tabZero 和 tabOne。
tabZero 包含一个 navController 和 2 个子视图控制器。 viewControllerRed 是导航的根,它有一个按下 viewControllerBlue 的按钮。
viewControllerBlue 有一个按钮:buttonPressed
。当 buttonPressed 被点击时,标签索引通过 self.tabBarController.selectedIndex 1
切换到 tabOne
我的问题是在切换之后,如果我按下 tabZero,viewControllerBlue 仍然显示。在按下 viewControllerBlue 中的 buttonPressed 后如何重置导航的根 vc (viewControllerRed)?
我不能使用 popToRootViewController
因为有 2 个转换同时发生。第一个是我正在更改 tabBar 索引,另一个是我重置根 vc。我需要在后台进行重置。
您可以在没有动画的情况下延迟执行弹出功能。
[self.navigationController performSelector:@selector(popToRootViewController) withObject:nil afterDelay:1];
或
Poptorootviewcontroller with delay
我有一个带有 2 个选项卡的 tabBarController:tabZero 和 tabOne。
tabZero 包含一个 navController 和 2 个子视图控制器。 viewControllerRed 是导航的根,它有一个按下 viewControllerBlue 的按钮。
viewControllerBlue 有一个按钮:buttonPressed
。当 buttonPressed 被点击时,标签索引通过 self.tabBarController.selectedIndex 1
我的问题是在切换之后,如果我按下 tabZero,viewControllerBlue 仍然显示。在按下 viewControllerBlue 中的 buttonPressed 后如何重置导航的根 vc (viewControllerRed)?
我不能使用 popToRootViewController
因为有 2 个转换同时发生。第一个是我正在更改 tabBar 索引,另一个是我重置根 vc。我需要在后台进行重置。
您可以在没有动画的情况下延迟执行弹出功能。
[self.navigationController performSelector:@selector(popToRootViewController) withObject:nil afterDelay:1];
或
Poptorootviewcontroller with delay