iPhone - 为我的应用程序存储数据的最佳方式

时间:2013-11-19 17:44:12

标签: ios iphone objective-c uitableview data-structures

我想创建一个应用程序,在类别中存储一些类别和一些项目。 我决定为类别创建一个类,为项目创建一个类。 我的想法是创建categories类的对象,并将对象放在数组中。像:

CategoryNSObject *category = [[CategoryNSObject alloc] init];
[aCategoriesArray addObject:category];

在类别对象中,我创建了另一个应该存储项目的数组。

我有一个UITableView,我可以在其中创建类别(已经有效)。然后我想要创建一些类别并点击其中一个类别,应该出现另一个tableview,我可以在其中创建该类别的项目。但这就是我卡住的地方。

这是最简单/最好的方法吗? 有人能帮助我吗?

感谢。

修改

我找到了一个解决方案:在对象中添加一个数组。对象内的数组也包含对象。适合我。

1 个答案:

答案 0 :(得分:2)

当你说商店时 - 我假设你的意思是在应用程序关闭后永久存在。在这种情况下 - 核心数据非常适合持久化并将这些项目与其类别相关联。这不是一件容易实现的事情,但我建议从Xcode Master / Detail模板项目开始并引用https://developer.apple.com/library/mac/documentation/cocoa/conceptual/coredata/cdProgrammingGuide.html

如果您只想在应用程序的持续时间内存储这些对象 - 您可以通过将所有内容存储为NSObject来采用更简单的方法。我还建议创建一个模型控制器(甚至可能是单个控件),它可以在应用期间保持这些类别及其项目的存活。这样,当视图控制器被销毁时,您的数据不会丢失。

此外,您可以将表视图的数据源指向此模型控制器,以保持UIViewController的代码清洁和可重用。