故事板很慢

Storyboard is very slow

所以我已经在一个有这么多视图控制器的项目上工作了一段时间,但我注意到现在当我尝试在任何视图中进行单个编辑时,情节提要挂起或变得无响应。这个问题的解决方案是什么?在我目前的状态下,是否可以将整个故事板拆分成更小的故事板?这会解决问题吗?我正在使用 Xcode 9.3

是的。一个项目中可以有多个故事板。事实上,这是管理超大型项目的首选方式。要创建更多故事板,请转到文件菜单 > 新建 > 文件...,然后从用户界面部分选择 select 故事板。这样做应该可以解决您的问题。但是,如果问题仍然存在,您可以考虑将特定的用户界面取出到它自己的 .xib 文件中。

更新:

如果我处于您的位置,我会考虑使用 .xib 文件来创建我的用户界面,而不是使用故事板。故事板确实有其优点,但如果您使用它们,也有一些缺点。喜欢:

  • 如果您在团队中工作,您将 运行 更频繁地陷入合并冲突,因为其他人对情节提要进行了更改。
  • 我仍然不是 S/W 设计的大师,但是,对我来说,故事板似乎违反了 S/W 设计的单一职责原则。
  • 您不会在复杂的 ui 流程中使用 Segues,所以将所有内容都放在一个文件中有什么意义。
  • 您将无法重复使用 UITableViewCells 界面。 Prototype Cells 是个好主意,但如果你有一个 UITableViewCell 用于多个 UITableView,你将不得不在 Storyboard 中复制 UI。
  • 根据我的经验,在一个更复杂和更大的项目中,所有内容都在一个 Storyboard 中,这使得理解 UI/UX 流程变得更加困难,因为来自每个视图控制器的 Segues 似乎与每个其他视图控制器连接到点它根本就没有意义了。

是的,最好练习将 viewConroller 分布到多个故事板中,这样您可以快速打开它,但它会占用您在访问代码时以编程方式管理每个故事板标识的时间.

否则,您可以将 Storyboard View 设置为:iPhone 5C 这样它的加载速度会比更大的设备快一点。

参考: