0

我一直在寻找 6 个小时的解决方案,但没有提出任何适用于我的情况的解决方案。我的故事板遵循以下流程:

TabBarViewController -> NavigationController ->TableViewController -> UIViewController(见下图)

故事板的图片

当单击最后一个视图控制器(陌生人视图控制器)中的“通知”按钮时,我想以编程方式从该视图控制器(陌生人视图控制器)转换/切换到 TabBarViewController 的不同子项(它是控制器图中标题为“环顾四周”)。

每次我执行传统的 segue 时:

  1. option + 从 Stranger View Controller 拖动 segue --> Look Around View Controller
  2. 给 segue 一个标识符
  3. 以编程方式使用 self.performSegueWithIdentifier。

我得到一个过渡。但是情节提要中的“环顾四周”标签栏消失了,在模拟器中,一旦我点击“通知”,视图就会变为“环顾四周”视图,但下面的标签栏并没有反映这种变化,因为它仍然突出显示上一个选项卡。

我已经处理了 IBAction 函数中需要处理的所有其他处理。一旦用户点击“通知”,这只是一个正确地将用户发送到不同视图的问题。

对此的任何指导将不胜感激。

如果您对我有任何问题或疑虑,请随时提问。我是新手,愿意接受任何帮助。

4

1 回答 1

1

ViewController 是 NavigationBar 的子节点,NavigationBarController 是 TabBarController 的子节点。因此不需要 Segue,因为它会扰乱流程。

以编程方式尝试

@IBAction func notifyButtonTapped(sender: AnyObject) {
        tabBarController?.selectedIndex = 1
        tabBarController?.tabBar.hidden = false
        self.navigationController?.popToRootViewControllerAnimated(false)
    }
于 2016-04-10T11:16:49.010 回答