代码之家  ›  专栏  ›  技术社区  ›  schmidt9

IOS多文档应用程序

  •  0
  • schmidt9  · 技术社区  · 10 年前

    我对iOS应用程序开发很陌生。我想开发一个基于文档的应用程序,一次可以处理许多文档。它们应该在选项卡中打开,应用程序窗口应该有一个用于所有选项卡的通用标题工具栏。 最好的方法是什么?我读过关于选项卡控制器的文章,它不能放在另一个控制器中,而这个控制器又可以容纳这个选项卡和标题工具栏。 简而言之,我如何获得基于多任务文档的应用程序?

    编辑

    线上没有人。。。好吧,我有一个主意——在下面创建一个带有按钮面板(选项卡模拟)的单个视图,通过按下按钮,我可以在这个视图中加载一部分文档(实际上是一张文档)。

    1 回复  |  直到 10 年前
        1
  •  1
  •   Maury Markowitz    9 年前

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

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

    然后简单地添加新类,每种类型一个,并使它们成为NSDocument的子类。您需要添加用于加载、保存和显示文档的代码。但大多数其他事情都是自动化的,甚至可以处理iCloud文档支持、多个编写器,几乎任何你能想到的东西。

    对于显示端,这取决于您,但创建选项卡界面并不困难。基本上,您希望在文档子类中有一个指向视图的ivar。应用程序将自动拥有一个保存所有文档的对象。现在,您只需在AppDelegate中添加方法,这样当用户New或Open时,它就会创建一个新视图来保存文档,将其插入到一个选项卡控件中,然后加载文档。作为加载过程的一部分,文档将调用其绘图方法,并显示为presto。

    事实上,大部分这些你甚至不必做,它也被构建在机器中。对于具有单个文档类型的基本应用程序,您通常只需编写十几个方法,对于处理多个文档的应用程序,唯一的变化是在不同的地方使用几个switch语句来查看文档类型并执行不同的操作(即,可能一个文档无法保存,只能加载)。

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