1

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

你会怎么去,重新使用相同的viewController。由于在故事板中构建无数个相同的viewController似乎是我的新手。谢谢所有帮助表示赞赏

回答

1

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

  1. 您应该添加按钮到视图控制器。但不是视图控制器的视图,您应该将其添加到您的视图控制器的顶部部分(顶部栏) 。
  2. 然后你从这个按钮添加segue到这个视图控制器。
  3. 现在你可以使用这个赛格瑞从代码(performSegue ...)
+0

这确实有效。但赛格行为很奇怪。一旦用户按下类似的葡萄酒,他们就会像目的一样继续前进,但是如果他们选择再次从新视角继续前进,他们会显示两次继续移动,并且这种效果会加起来为2^n。你知道解决这个问题的方法吗? –

2

您可以使用Storyboards并没有问题重用ViewController。 在Storyboard中使用Storyboard ID中的identity inspector,向ViewController添加唯一ID。

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

  • 实例化的第一级的viewController与SEGUE,不止一次要与UIStoryboardinstantiateviewcontrollerwithidentifier:添加其他视图控制器(同类型),并给予在视图控制器的唯一ID,并且目前它

  • 您可以只使用UIStoryboardinstantiateviewcontrollerwithidentifier:每次你想展示ViewController
+0

这确实有效。但赛格行为很奇怪。一旦用户按下类似的葡萄酒,他们就会像目的一样继续前进,但是如果他们选择再次从新视角继续前进,他们会显示两次继续移动,并且这种效果会加起来为2^n。你知道解决这个问题的方法吗? –

相关问题