.xib文件和.storyboard有什么区别?

Posted

tags:

篇首语:本文由小常识网(cha138.com)小编为大家整理,主要介绍了.xib文件和.storyboard有什么区别?相关的知识,希望对你有一定的参考价值。

有人可以用简单的词语解释.xib和.storyboard之间的区别吗?

答案

Apple在ios5 SDK中引入了"storyboarding"的概念,以简化和更好地管理应用中的屏幕。您仍然可以使用.xib开发方式。

故事前,每个UIViewController有一个相关的.xib与它。 Storyboard实现了两件事:

  1. .storyboard本质上是应用程序中所有屏幕的单个文件,它显示了屏幕的流程。您可以通过这种方式在屏幕之间添加segues /过渡。因此,这最小化了管理多个屏幕所需的样板代码。
  2. 最大限度地减少应用中的文件总数。

您可以通过取消选中“使用故事板”选项来避免在创建新项目时使用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 从 .xib 过渡到 Storyboard

在 Xcode 7 中清除所有 XIB / Storyboard 文件中所有警告的最快方法是啥

删除 Storyboard 以使用 XIB 文件

Xamarin iOS:不打开.xib和.storyboard文件Visual Studio 2017

XIB 和 NIB 文件有啥区别?

如何通过编码管理 .storyboard 或 .xib 文件中的多个视图。?