Xcode中StoryBoard Reference 新特性的使用

前言

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

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

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

StoryBoard Reference

如图:

Snip20170330_1.png

介绍

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

使用

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

操作如下

Snip20170330_3.png

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

Snip20170331_1.png

对应的就会生成几个新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。
最后编辑于
©著作权归作者所有,转载或内容合作请联系作者
平台声明:文章内容(如有图片或视频亦包括在内)由作者上传并发布,文章内容仅代表作者本人观点,简书系信息发布平台,仅提供信息存储服务。

推荐阅读更多精彩内容

  • 发现 关注 消息 iOS 第三方库、插件、知名博客总结 作者大灰狼的小绵羊哥哥关注 2017.06.26 09:4...
    肇东周阅读 12,301评论 4 61
  • 亲爱的梵高先生 没能目睹你的手作画的时刻 终将是 一切焦虑的夜晚的 开始 我在深夜里 望星空 试图闯入众神...
    尼旦阅读 419评论 2 2
  • JSX 可以被视为一种 JS 的模板语言,形如: 使用引号来表示 JS 代码: 如果是多行的话,可以加一个括号: ...
    马文Marvin阅读 159评论 0 0