Swift 3 – 隐藏在 Segue 上的标签栏

Swift 3 – Tab Bar Hidden on Segue

这是我的setup(点击'setup'看图片):

问题

当我从蓝色切换回绿色时,我失去了标签栏并且无法进入红色。我认为这是因为我使用的 segue 覆盖了整个屏幕并隐藏了标签栏。我应该使用什么 segue?为什么 seguing back 不再显示 Tab Bar?

请注意,我想使用按钮在 Green/Blue 之间切换(到目前为止,只有 Show Detail segue 有效)但我想使用标签栏在 [=13= 之间切换]. 我试过 and 但都不适合我。

提前致谢,

J。肖

我不清楚您是如何从 Blue View Controller 中删除标签栏的,但是我在下面描述的方法将其删除,并且当您使用后退按钮时它将保留在 Green View Controller 上。结果是您将能够通过标签栏移动红色 VC。

  1. 创建一个新的 Cocoa 触摸 Class 文件...文件 -> 新文件。我将其命名为 GreenVC 并确保您 select UIViewController 在 Sub Class 下拉列表中。
  2. 用下面的代码替换GreenVC的内容:

导入 UIKit

class GreenVC: UIViewController {

    override func viewDidLoad() {
        super.viewDidLoad()
    }

    override func prepare(for segue: UIStoryboardSegue, sender: Any?) {
        let destinationVC = segue.destination as! UIViewController
        destinationVC.hidesBottomBarWhenPushed = true
    }
}
  1. 单击故事板中绿色视图控制器顶部的黄色圆圈。
  2. 转到身份检查器,然后从 Class 下拉列表中的 select 绿色 VC 自定义 Class 如下所示:

  1. 大功告成!

故事板: