需要模型视图建议

时间:2012-05-02 18:22:25

标签: model-view-controller ios5 xcode4.2

我已经被困在这么长时间了,只是无法理解这个概念。我不能在我的应用程序的第一页之外保留任何数据,每次我推送到另一个视图我丢失了在文本字段或导入的任何图片中输入的所有数据。这意味着我已经做了第一页上的所有事情,因为我离开它时会立即销毁数据的唯一页面。当然必须有一个更简单的方法来做到这一点...有人指向的方向一个真正的初学者模型视图指南,我已经阅读了Apple的文档并且发现它没有任何帮助,我已经在这里阅读,并用谷歌搜索它,现在我的想法已经用完了

1 个答案:

答案 0 :(得分:1)

您正在以“控制器”级别存储数据。就像“视图”级别一样,这些来来往往并不是长期存储数据的好地方。对于长期存储,您希望在“模型”中保留数据。您可以通过这种方式考虑三层。

  • 模型是数据(包括易失性和永久性)和业务规则。
  • Controller是业务规则,从视图到模型的数据解释,以及用户交互管理。
  • 视图用于将数据输出转换为有意义的信息和用户响应解释。

控制器(视图控制器)应该只保留足够的数据来完成它们的工作,并且永远不应该被认为持有的数据超过了必要的时间。这就是原始视图控制器是唯一保留数据的控制器。它是“Root”视图控制器,因为它是底视图控制器,所以不会被删除。当你“推”另一个视图控制器时,它是临时的,因为它将被“弹出”后退并取消分配。考虑将数据(甚至是根视图控制器)保存在您可以访问的其他位置。也许在App Delegate,Core Data或简单管理所需数据的自定义类中。确保您的模型和控制器对象可以获取数据,并且您将获得一致的数据。