斯威夫特3 - 在Segue上隐藏的标签栏

时间:2018-04-09 20:04:06

标签: swift3 segue hidden tabbar

这是我的setup(点击“设置”查看图片):

问题

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

请注意,我想使用按钮在Green/Blue之间切换(到目前为止,只有Show Detail segue有效),但我想使用标签栏在Red/Green之间切换。 我尝试了thisthis,但都没有为我工作。

提前致谢,

学家肖

1 个答案:

答案 0 :(得分:0)

我不清楚你是如何从蓝视图控制器中删除标签栏的,但我在下面描述的方式将其删除,当你使用后退按钮时,它将保留在绿色视图控制器上。结果是您可以通过Tab Bar移动Red VC。

  1. 创建一个新的Cocoa Touch类文件...文件 - >新文件。我将其命名为GreenVC,并确保在Sub Class Of下拉列表中选择UIViewController。
  2. 使用以下代码替换GreenVC的内容:
  3. 导入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. 转到身份检查器并从“自定义类”下的“类”下拉菜单中选择GreenVC,如下所示:
    3. enter image description here

      1. 你完成了!
      2. 故事板:

        enter image description here