iPhone:查看/编辑/列表控制器

时间:2012-02-08 22:34:37

标签: iphone ios5 uiviewcontroller

我有一个客户视图控制器,它是UITableViewController的子类。它有一个列出所有客户的列表。我右上角有一个+按钮。我想这样做,当人们点击+它会进入添加客户屏幕,点击保存后,它将像iphone联系人列表一样,然后显示新添加的客户。

我是否需要为每个视图创建一个控制器?一个显示列表,一个用于添加人,一个用于查看联系人,另一个用于编辑联系人?或者我应该使用一个控制器,只是在IB中将一堆视图添加到单个视图控制器中?

3 个答案:

答案 0 :(得分:1)

  1. 创建CustomerListController以查看所有客户。
  2. 创建CustomerViewController以查看和修改详细信息。
  3. CustomerViewController调用它CustomerAddController进行子类化以进行创建,因为这需要更多功能。
  4. Core Data Recipes应用程序将为您提供一些很好的指导。

    如果您希望仅在>之后创建记录,则点击保存,您需要:

    1. 假设您正在使用核心数据,请创建一个额外的NSManagedObjectContext
    2. 将该上下文传递给CustomerAddController的实例(视图类不需要)。
    3. 点击保存按钮后,您需要合并NSManagedObjectContext中的两个CustomerListController类。

答案 1 :(得分:0)

我相信联系人应用的方式是:

  • 联系人列表是UINavigationController中的UITableViewController
  • 触摸+ modally(从导航控制器)显示用于添加联系人的其他视图控制器
  • 触摸完成将新视图控制器推送到导航控制器上以查看新创建的联系人,但由于模态显示的联系人添加视图控制器位于顶部,因此它仍然不可见。紧接着,模态视图控制器被解除,显示新创建的联系人。

要回答您的问题,我建议使用三种不同的视图控制器,就像联系人应用程序一样。

答案 2 :(得分:0)

我建议你为每个任务使用不同的视图,因为使用一个IB文件使用更多的内存,就好像你使用不同的IB并查看每个任务的控制器那样,没有太多的内存被使用,并且在完成一个任务后例如当您保存用户详细信息时,释放该视图的内存,以便您的应用程序不会占用太多内存。