在swift中重复使用相同的viewController在navigationStack之上

时间:2017-06-02 06:32:18

标签: ios swift uitableview uiviewcontroller uinavigationcontroller

对于我的app项目,我创建了一个tableView,它显示了葡萄酒,包括评级评论,品尝笔记和每个部分中的各种数据。在最后一部分中,用户会看到两个相似的葡萄酒,一旦推送它就是重新使用当前viewController的目的,并将其扔到导航堆栈上,因为用户可能会浏览该viewController中的另一个葡萄酒,等等。

你将如何进行,重新使用相同的viewController。由于在故事板中构建无限数量的相同viewController似乎对我来说是新手。谢谢大家的帮助。

2 个答案:

答案 0 :(得分:2)

您可以使用Storyboards并重复使用ViewController毫无问题。 在Storyboard中使用Storyboard ID中的identity inspector,为ViewController添加唯一ID。

之后它很简单,你可以以太:

  • 使用segue实例化第一级viewController,而不是使用UIStoryboard instantiateviewcontrollerwithidentifier:添加另一个ViewController(相同类型)并提供ViewController的唯一ID,并显示它

  • 每次要展示ViewController时,您都可以使用UIStoryboard instantiateviewcontrollerwithidentifier:

答案 1 :(得分:1)

如果你想使用故事板,有一个黑客(有点脏)。

  1. 您应该添加按钮以查看控制器。但不是为了 视图控制器,你应该将它添加到顶部(顶部栏) 你的视图控制器。
  2. 然后将此按钮中的segue添加到此视图控制器。
  3. 现在您可以使用代码中的segue(performSegue ...)