同时切换选项卡和重置 Nav 的视图控制器-Swift iOS

Switch Tabs and Reset Nav's View Controllers at the same time-Swift iOS

我有一个带有 2 个选项卡的 tabBarController:

tab0, tab1

在 tab0 中,我有一个带有 3 个子视图的 navigationController

视图A(根)、视图B、视图C

在 viewC 中按下一个按钮将使用代码

将我带到 tab1
@IBAction func switchButtonTapped(sender: UIButton){
    tabBarController.selectedIndex = 1
}

我遇到的问题是,一旦我切换到 tab1,我就无法让 tab0 重置回 viewA(它的根 vc),它停留在 viewC。

如何从 tab0 切换到 tab1 并同时重置 tab0 中的视图?

由于我同时切换选项卡和重置导航控制器的 vcs,这应该发生在不同的线程上吗?

 @IBAction func switchButtonTapped(sender: UIButton){
        tabBarController.selectedIndex = 1
        dispatch_async(dispatch_get_main_queue(), {
self.navigationController?.popToRootViewController(animated:true)
} 
    }

注:Swift3码:

@IBAction func switchButtonTapped(sender: UIButton){
    tabBarController?.selectedIndex = 1
    navigationController?.popToRootViewController(animated: true)
}

这对我来说很好(它选择了第二个选项卡,当我点击第一个选项卡按钮时,它显示第一个选项卡的根 -first- ViewController)。