文档详情

从今天开始学习iOS开发(iOS版)实现一款App教程添加数据!.doc

发布:2017-10-05约1.39万字共31页下载文档
文本预览下载声明
本教程以第二个教程(“教程:串联图”)中创建的项目为基础。您将用到从使用设计模式、使用 Foundation 以及编写自定类中学到的知识,在 ToDoList 应用程序中添加对动态数据的支持。 本教程讲述了以下操作: 使用常见的 Foundation 类 创建自定数据类 实现委托和数据源协议 在视图控制器之间传递数据 完成本教程中的所有步骤后,您的应用程序外观大致是这样的: 创建数据类 现在就开始吧,请在 Xcode 中打开您的现有项目。 目前,使用串联图的 ToDoList 应用程序有一个界面和一个导航方案。现在,是时候使用模型对象来添加数据储存和行为了。 应用程序的目标在于创建一个待办事项列表,因此首先您将创建一个自定类 XYZToDoItem 来表示单个待办事项。您应该记得,XYZToDoItem 类已经在编写自定类中讨论过。 创建 XYZToDoItem 类 1.选取“File”“New”“File”(或按下 Command-N)。 这时将会出现一个对话框,提示您为新文件选取模板。 2.从左侧的 iOS 下方选择“Cocoa Touch”。 3.选择“Objective-C Class”,并点按“Next”。 4.在“Class”栏中,在 XYZ 前缀后键入 ToDoItem。 5.从“Subclass of”弹出式菜单中选取“NSObject”。 如果您完全按照本教程操作,那么在这个步骤之前,“Class”标题可能是 XYZToDoItemViewController。选取 NSObject 作为“Subclass of”后,Xcode 会知道您创建了一个正常的自定类,并移除了它先前添加的 ViewController 文本。 6.点按“Next”。 7.存储位置默认为您的项目目录。此处无需更改。 8.“Group”选项默认为您的应用程序名称“ToDoList”。此处无需更改。 9.“Targets”部分默认选定您的应用程序,未选定应用程序的测试。好极了,这些都无需更改。 10.点按“Create”。 XYZToDoItem 类很容易实现。它具有项目名称、创建日期,以及该项目是否已完成等属性。继续将这些属性添加到 XYZToDoItem 类接口。 配置 XYZToDoItem 类 1.在项目导航器中,选择 XYZToDoItem.h。 2.将以下属性添加到该接口,使声明如下所示: @interfaceXYZToDoItem:NSObject@propertyNSString*itemName;@propertyBOOLcompleted;@property(readonly)NSDate*creationDate;@end检查点:通过选取“Product”“Build”(或按下 Command-B)来生成项目。尽管该新类尚未实现任何功能,但是生成它有助于编译器验证任何拼写错误。如果发现错误,请及时修正:通读编辑器提供的警告或错误,然后回顾本教程中的说明,确保所有内容与此处的描述相符。 载入数据 您现在有一个类,可以用它作为基础来为单个列表项目创建并储存数据。您还需要保留一个项目列表。在 XYZToDoListViewController 类中跟踪此内容较为合适,视图控制器负责协调模型和视图,所以需要对模型进行引用。 Foundation 框架有一个 NSMutableArray 类,很适合跟踪项目列表。此处必须使用可变数组,这样用户就可以将项目添加到数组。因为不可变数组 NSArray 在其初始化后将不允许添加项目。 要使用数组,您需要声明并创建它。可以通过分配并初始化数组来完成。 要分配并初始化数组 1.在项目导航器中,选择 XYZToDoListViewController.m。 由于项目数组是表格视图控制器的实现细节,所以应该在 .m 文件中进行声明,而不是 .h 文件。此操作可让项目数组成为您自定类的私有数组。 2.将以下属性添加到接口类别中,它是由 Xcode 在您的自定表格视图控制器类中创建的。声明应该是这样的: @interfaceXYZToDoListViewController()@propertyNSMutableArray*toDoItems;@end3.在 viewDidLoad 方法中分配并初始化 toDoItems 数组: -(void)viewDidLoad{[superviewDidLoad];self.toDoItems=[[NSMutableArrayalloc]init];}viewDidLoad 的实际代码中有一些附加行被注释掉了,那些行是 Xcode 创建 XYZListViewController 时插入的。保留与否都没有影响。 现在,您已经拥有了一个可以添加项目的数组。
显示全部
相似文档