如何在弹出到根视图 Swift 后立即更改选项卡?

Posted

技术标签:

【中文标题】如何在弹出到根视图 Swift 后立即更改选项卡?【英文标题】:how to change tab immediately after pop to rootView Swift? 【发布时间】:2018-06-13 08:48:34 【问题描述】:

我有一个包含 5 个选项卡的选项卡视图,每个选项卡都嵌入在导航控制器中!在tab 1中,我进入view controller A,然后进入viewController B!在 B 视图控制器中的按钮上,我想弹出到根视图,并更改选项卡!我使用了这段代码:

  self.navigationController?.popToRootViewController(animated: true)                  
  self.tabBarController?.selectedIndex = 4

但它只会弹出到根视图,并且不会更改选项卡! 我该怎么做?!

【问题讨论】:

试试 self.navigationController?.tabBarController?.selectedIndex 吗? @koropok 感谢您的回答,在您提出建议后,我不得不将 pop 设置为 root 视图,并且效果很好!谢谢!! @koropok 我建议将其添加为答案,以便 OP 可以接受它。 @AhmadF 好的,谢谢。 @AzinNilchi 你能接受答案吗?仅供参考,接受答案会导致: - 给予回答者 +15 声望点。 - 给你(询问者)+2 声望点。 - 最重要的是,它向观众表明此答案是解决此问题的适当解决方案。 【参考方案1】:

你必须改用这个。

 self.navigationController?.tabBarController?.selectedIndex

【讨论】:

它还在 Swift 5 中工作吗?我已尝试但无法更改所选标签

以上是关于如何在弹出到根视图 Swift 后立即更改选项卡?的主要内容,如果未能解决你的问题,请参考以下文章

弹出到根视图控制器,没有表视图的动画崩溃

SwiftUI:再次轻按选定的选项卡时,弹出到根视图

当标签栏点击两次时禁用自动弹出到根视图控制器

如何关闭视图控制器并快速弹出到根视图控制器?

从模态弹出到根视图控制器

弹出导航控制器并选择选项卡?