【发布时间】:2016-01-14 13:20:58
【问题描述】:
我在情节提要中创建了新的视图控制器。现在我希望它出现在屏幕上。所有书籍、教程、课程都告诉我应该使用 segue 在控制器之间传输数据。为什么?
通常我会这样做:
let newViewController = self.storyboard.instantiateViewControllerWithIdentifier("newViewController") as NewViewController
self.presentViewController(newViewController, animated: true, completion: nil)
在我看来,这种方式更清晰有用。我可以使用 Interface Builder 创建新场景,用标识符命名它,并随时从情节提要中获取。
这种方法有什么问题?
【问题讨论】:
-
在我看来,这并没有什么问题。有些人喜欢配置,有些人喜欢代码。 (另一方面,我根本不喜欢在控制器之间传输数据。我宁愿有一个独立的数据模型。)
-
要详细了解它们之间的区别,可以参考这个stackoverflow.com/questions/30009400/…
-
Segues 使您能够将更多的 UI 设置移动到 Interface Builder,即减少手动代码和出错的可能性。在这种情况下,几乎没有区别。将所有控制器放在一个情节提要中也不是一个好主意。