示例代码说明了iOS中的MVC体系结构
我试图获得MVC体系结构的挂起。假设我有一个plist,里面有一个人名单,每个人都有几个属性,比如姓名,地址和照片。假设 我想在表格视图中显示这些详细信息。单元格标题将是名称,描述将是地址,左侧的图像将是该人员的照片。示例代码说明了iOS中的MVC体系结构
一种方法,我可以采取的是加载的plist在阵列的-字典在我viewDidLoad中:然后显示出来。
不过,我想通过创建“人”类采用面向对象的方法。在这种情况下我如何去做同样的事情?我相信我可以从创建具有三个属性的'人'类开始:姓名,地址,照片。接下来是什么?我需要这个'Person'类的许多实例吗?我将如何用plist中的相应人员条目“加载”每个实例?我应该创建另一个类来做这个“加载”吗?人们使用Singleton类来实现他的?
有人可以分享一些示例代码示例来说明这一点吗?或者,也许引导我谈论这个博客/资源?
嗯,我想你已经在想这个了。我只会创建一个能处理我的人的类,在这种情况下,你的'人'类。
我会简单地存储每个使用核心数据的人。然后,当显示它们的时候,我只会发出一个抓取请求,并将所有人员管理的对象存储到一个NSMutableArray(它只是处理对象数组)中。然后,您可以简单地使用索引值在tableView中显示数组中的众多人员。
总之我想:
1. For every person, create instance of Person.
2. Verify if person exists in my Core Data Person Entity.
3. If not, then insert into Core Data (the object will become an
NSManagedObject).
4. For displaying, simply do a fetch request to pull all persons in your
entity. Here I prefer to store the
results into an NSMutableArray, but
that is completely up to you. Make
sure you release your fetch request
after the results are store in the
array.
5. Reference them to your table view using the index value for each
person NSManagedObject in the array.
对于一些不涉及存储简单:
1. Create instance of Person for every entry.
2. Add Person object to array.
3. Reference each Person to table view using index value.
到底该拿你将你想要做什么来决定的方法与信息。
至于阅读的plist,我会选择读取XML为所有你需要的是一个XML解析器类(有用于解析器几个选项)。由于我没有做任何事情,只是解析XML,所以我使用NSXMLParser,但这个选择也取决于您。只需创建一个NSXMLParser类(确保解析器在分析器中找到给定元素时的不同操作)。所以,是的,您需要添加NSXMLParser来处理每个元素。这听起来很简单。
此外,通过在核心数据存储,您可以随时获取没有你使用辛格尔顿的信息。
我相信你不是在寻找上述问题的设计解决方案。如果是这样的话@A Salcedo的版本看起来不错。
,如果你正在寻找的一般指导线MVC和建模,Martin Fowler的网站提供一些最好的(敏捷)设计/造型指导。
http://www.martinfowler.com/eaaDev/uiArchs.html(在MVC上)和
http://martinfowler.com/design.html(许多有趣的设计相关的帖子)。
快乐阅读。