IOS Multi-document 申请

IOS Multi-document application

我对 iOS 应用程序开发还很陌生。我想开发一个 document-based 应用程序,它可以同时处理许多文档。它们应该在选项卡中打开,应用程序 window 应该有一个用于所有选项卡的通用 header 工具栏。 最好的方法是什么?我读过有关选项卡控制器的信息,它不能放入另一个控制器中,而另一个控制器又可以容纳此选项卡和 header 工具栏。 所以简而言之,我怎样才能获得 multitab document-based 应用程序?

编辑

没有人在线...好吧,我有一个想法 - 做一个带有按钮面板(标签模拟)的单一视图,然后按下按钮我可以加载文档的一部分(实际上是 sheet 个)在此视图中。

所有这些都是使用内置文档模型处理的。

新文档类型是通过将它们添加到项目目标来创建的,您只需要提供文档类型的名称、扩展名和处理这些类型文档操作的 class。

然后只需添加新的 classes,每种类型一个,并使它们成为 NSDocument 的子classes。您需要添加用于加载、保存和显示文档的代码。但大多数其他一切都是自动化的,甚至处理 iCloud 文档支持、多个作者,几乎任何你能想到的。

对于显示方面,这取决于你,但做一个标签界面应该不难。基本上你想在你的文档 subclasses 中有一个指向视图的 ivar。该应用程序将自动拥有一个包含所有文档的对象。现在您只需在 AppDelegate 中添加方法,这样当用户新建或打开时,它会创建一个新视图来保存文档,将其插入到选项卡控件中,然后加载文档。作为加载过程的一部分,文档将调用它的绘制方法,然后就出现了。

事实上,其中大部分您甚至不必做,它也内置在机器中。对于具有单一文档类型的基本应用程序,您通常只需要编写十几种方法,对于处理多个文档的应用程序,唯一的变化是在不同地方的几个 switch 语句来查看文档类型并做不同的事情(即,也许一个文档无法保存,只能加载)。

从这里开始:https://developer.apple.com/library/ios/documentation/DataManagement/Conceptual/DocumentBasedAppPGiOS/Introduction/Introduction.html