首页 > 技术文章 > Xcode中StoryBoard Reference 新特性的使用

zhengxingpeng 2017-04-09 20:26 原文

前言

StoryBoard是iOS开发中很直观的开发工具,它可以极大的提高开发效率,但是StoryBoard由于能直接描述多个控制器页面,也会引发一些问题。

当团队开发时,StoryBoard中的拖入的控制器过多会导致界面错综复杂。并且协同开发中特别容易出现冲突。如果冲突出现了也会特别难以解决,各种连线会直接影响问题排查。

苹果也意识到了这个问题。在iOS 9 以后引入了一个StoryBoard Reference特性。很好的解决了这个问题。

StoryBoard Reference

如图:

介绍

StoryBoard Reference就是StoryBoard 引用的意思,它为其他的StoryBoard提供了一个站位的控制器。

使用

它使用很简单:如图,本来是tabbarcontroller --> navigationController --> viewController 这样的结构,但是自控制器多了很乱,也不易调试。所以可以将每个自控制模块单独抽取出来,创建一个独立的StoryBoard。

操作如下

如图会将对应的模块转化成一个新的StoryBoard,并在原来部分生成一个StoryBoard Reference。效果非常直观!

对应的就会生成几个新StoryBoard。对应的StoryBoard就是原来每个模块的单独部分,这样不仅看起来更加直观了,还消除了很多安全隐患。

至于新的StoryBoard的使用就直接通过StoryBoard来创建对应的ViewController来设置对应的UI页面了。

小结

  1. StoryBoard Reference 很方便使用,解决了StoryBoard过于庞大之后不易维护的问题。
  2. StoryBoard Reference 是iOS 9 之后的新特性,如果直接使用会导致系统版本在iOS 9 以下的机型无法使用
  3. StoryBoard Reference 做 iOS 9 以下适配。可以删除对应的StoryBoard Reference,并根据生成的新StoryBoard 通过代码来加载对应的StoryBoard 中的ViewController。
踏实的学点东西,让自己丰富,也让生活丰富和充实。

推荐阅读