.xib文件和.storyboard有什么区别?
Posted
tags:
篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了.xib文件和.storyboard有什么区别?相关的知识,希望对你有一定的参考价值。
有人可以用简单的词语解释.xib和.storyboard之间的区别吗?
Apple在ios5 SDK中引入了"storyboarding"
的概念,以简化和更好地管理应用中的屏幕。您仍然可以使用.xib
开发方式。
故事前,每个UIViewController
有一个相关的.xib
与它。 Storyboard
实现了两件事:
.storyboard
本质上是应用程序中所有屏幕的单个文件,它显示了屏幕的流程。您可以通过这种方式在屏幕之间添加segues
/过渡。因此,这最小化了管理多个屏幕所需的样板代码。- 最大限度地减少应用中的文件总数。
您可以通过取消选中“使用故事板”选项来避免在创建新项目时使用Storyboard
。
你可以参考这个tutorial开始吧。
是的,您仍然可以为iOS 5创建基于Window的应用程序。如果使用“空项目”模板,您将看到在应用程序委托中为您创建了一个窗口。从那里你可以正常添加XIB文件,或者添加新的故事板。
我假设你的意思是“故事板”而不是“时间轴”。通过故事板,您可以直观地绘制应用程序中的所有视图以及它们之间的相互关系。如果您刚开始使用故事板,那么WWDC 2011视频here中的故事板介绍。 iTunes-U上的2011 Stanford iOS course也是iOS 5特有的,涵盖了故事板等。
故事板就像一个画布,您可以放置所有.xib文件。您不再拥有任何.xib,只需在画布上直接使用View Controllers即可。
storyboard是Xcode 4.2发布以来的新功能。它为iOS开发人员提供了一种创建和设计用户界面的全新方式。在故事板介绍之前,初学者创建导航(和标签)界面尤其困难。每个接口都存储在一个单独的xib文件中。最重要的是,您必须编写代码将所有接口链接在一起并描述导航的工作原理。
使用Storyboard,所有屏幕都存储在一个文件中。这为您提供了应用程序可视化表示的概念性概述,并向您显示了屏幕的连接方式。 Xcode提供了一个内置的编辑器来布局Storyboard。您可以使用指向和单击来定义各种屏幕之间的过渡(称为segues)。这并不意味着您不需要为用户界面编写代码。但是,Storyboard显着减少了您需要编写的代码量。
资料来源:http://www.appcoda.com/use-storyboards-to-build-navigation-controller-and-table-view/
老师:
1)Xib文件与单个UIView一起使用。
2)在xib中实现复杂的自动布局非常困难。
3)与故事板和安静缓慢相比,它使用更多的内存。
4)从iOS5开始兼容
5)您可以使用不同的XIB为不同的语言和国家/地区进行本地化。
6)使用相同的Xib来支持多个设备很困难。
故事板
1)您可以在一个故事板中布局所有场景,如视图控制器,导航控制器,TabBar控制器等。
2)您可以轻松使用自动布局,定义定义其位置和尺寸的元素之间的数学关系。
3)通常快速并分配更少的内存。
4)在iOS 5之前它不兼容。
5)可以容易地使用“动态”和“原型”细胞。
6)故事板最适合用于具有少量到中等数量屏幕的应用程序。
我见过的最佳答案:Xib Vs Storyboard in iOS
XIB和Storyboard用于为用户创建界面。
重要的一点是,xib用于创建单个视图(它在xib文件的顶部有单个文件所有者),但是对于viewcontroller,可以添加多个屏幕并且还可以监视其流程(它具有单独的文件所有者)。
以上是关于.xib文件和.storyboard有什么区别?的主要内容,如果未能解决你的问题,请参考以下文章
在 Xcode 7 中清除所有 XIB / Storyboard 文件中所有警告的最快方法是啥