博客
关于我
强烈建议你试试无所不能的chatGPT,快点击我
StoryBoard拆分(Storyboard References)
阅读量:5235 次
发布时间:2019-06-14

本文共 2219 字,大约阅读时间需要 7 分钟。

https://www.jianshu.com/p/78dc76204c8e

  • iOS UI篇10- Storyboard(Storyboard Reference)

https://www.aliyun.com/jiaocheng/390838.html

    • 摘要:在Xcode7中,我们有一个在多个storyboards中组织scenes的新方法,并且能对它们进行引用。直接看Main.storyboard文件。我已经为了准备好了一系列组织在一个tabBarController下Viewcontroller。每一个tab包含一个NavigationController。下面的图片强调了示例项目的storyboard部分:正如你所看到的那样,tabbarcontroller包含了三个navigationcontroller。每一个navig
    • 在Xcode 7中,我们有一个在多个storyboards中组织scenes的新方法,并且能对它们进行引用。

      直接看Main.storyboard文件。我已经为了准备好了一系列组织在一个tabBar Controller下View controller。每一个tab包含一个Navigation Controller。

      下面的图片强调了示例项目的storyboard部分:

      iOS UI篇10- Storyboard(Storyboard Reference)_IOS

      正如你所看到的那样,tab bar controller包含了三个navigation controller。每一个navigation controller控制着不同的视图控制器。现在,想象一下在这个项目里和其他开发者一起工作。正如我前面描述的那样,使用同一个storyboard文件是非常令人头疼的,因为你们每个人都会修改它。你可以把着三个navigation分支分割成三个storyboard文件。然而,当你准备在运行期从一个storyboard跳转到另外一个时,你必须加载相应的storyboard文件。这需要增加额外的代码。

      xcode 7允许你创建多个storyboards,并且可以方便地操纵它们。选择顶部的navigation controller 以及两个view controller,如下图所示:

      iOS UI篇10- Storyboard(Storyboard Reference)_IOS

      选择好之后,打开菜单栏的Editor,然后选择Refactor to Storyboard(如图)

      iOS UI篇10- Storyboard(Storyboard Reference)_IOS

      为新的storyboard取一个名字(如图)。我将它命名为First.storyboard。

      iOS UI篇10- Storyboard(Storyboard Reference)_IOS

      点击保存。正如你所见到的那样,一个新的storyboard已经被添加到你的项目中了。让我们回到Main.storyboard,你将会看到如下的对象。

      iOS UI篇10- Storyboard(Storyboard Reference)_IOS

      这个称之为Storyboard Reference,它确实为新建的First.storyboard的引用,并且替换了先前选择的三个view controller。最棒的是如果你双击storyboard引用,Xcode 7会打开所引用的storyboard。因此,当你想要控制应用流时,你可以方便地导向不同的storyboard。在运行期间,当segue指向的一个Storyboard Reference被执行时,这个被引用的storyboard中的初始化view controller会被加载。此外,Storyboard References还能够引用相同的storyboard。

      另外,你也可以手工创建一个新的storyboard,然后添加一个Storyboard Reference到起始的storyboard中。让我们来试一下。

      创建一个新的storyboard并命名为Third.storyboard。在Main.storyboard文件中,从Object Library中添加新的Storyboard Reference。选择Storyboard Reference并且打开相应的Attributes Inspector。如下图所示:

      iOS UI篇10- Storyboard(Storyboard Reference)_IOS

      在这个字段中,选择你想要引用的storyboard(在我们的例子中是Third)。如果这个字段为空白,则被引用的storyboard是定义的Storyboard Reference。Reference ID指向在目的storyboard中的一个特定scene。如果你置空的话,初始化view controller会加载。

      iOS UI篇10- Storyboard(Storyboard Reference)_IOS

      最后,Bundle字段需要被置为包含目的storyboard的bundle。如果你留空的话,就会使用源storyboard的bundle。

      在Third.storyboard文件中,你需要添加一个新的view controller并将其作为初始化的view controller。之后,只要view controller是Main storyboard的一部分,你可以都可以运行app并且导航到那里。

      所有,现在你可以在多个文件里组织你的storyboard,并且可以保持这些storyboard的引用。此外,每一个storyboard能够被分配给一个不同的开发者,而你不需要去考虑view controller间的连接组合。

      以上是

    • 的内容,更多 

    • 的内容,请您使用右上方搜索功能获取相关信息。
來源:简书
简书著作权归作者所有,任何形式的转载都请联系作者获得授权并注明出处。

转载于:https://www.cnblogs.com/itlover2013/p/10038076.html

你可能感兴趣的文章
auth模块
查看>>
javascript keycode大全
查看>>
前台freemark获取后台的值
查看>>
log4j.properties的作用
查看>>
游戏偶感
查看>>
Leetcode: Unique Binary Search Trees II
查看>>
C++ FFLIB 之FFDB: 使用 Mysql&Sqlite 实现CRUD
查看>>
Spring-hibernate整合
查看>>
c++ map
查看>>
exit和return的区别
查看>>
discuz 常用脚本格式化数据
查看>>
洛谷P2777
查看>>
PHPStorm2017设置字体与设置浏览器访问
查看>>
SQL查询总结 - wanglei
查看>>
安装cocoa pods时出现Operation not permitted - /usr/bin/xcodeproj的问题
查看>>
GIT笔记:将项目发布到码云
查看>>
JavaScript:学习笔记(7)——VAR、LET、CONST三种变量声明的区别
查看>>
JavaScript 鸭子模型
查看>>
SQL Server 如何查询表定义的列和索引信息
查看>>
GCD 之线程死锁
查看>>