为 iOS 应用程序存储预填充数据(图像 + 文本)的建议 [重复]

Posted

技术标签:

【中文标题】为 iOS 应用程序存储预填充数据(图像 + 文本)的建议 [重复]【英文标题】:Advices to store pre-populated data (image + text) for an iOS app [duplicate] 【发布时间】:2014-01-26 02:29:50 【问题描述】:

我已经为 ios 构建了一个食谱应用程序,但由于 SSD 驱动器有缺陷以及我没有备份任何内容的惊人愚蠢,我最近丢失了所有代码。我吸取了教训,但这次我不想再次尝试构建相同的应用程序,而是想变得更聪明一些。

我一直遇到的问题是,由于它们的存储方式,添加新食谱非常痛苦:我将每张图片命名为“recipe_X.png”,并且我有一个文本文件,其中包含一堆逗号分隔的行,内容如下格式“标题,副标题,数量1,成分1,数量2,成分2 ...”。 然后我会运行一个从 1 到 X 的 while 循环并读取配方信息并加载图像。

这很好用,但添加 10 个新食谱需要我几个小时,因为我需要填写所有数据、调整所有图像的大小、重命名它们,然后测试每个食谱以确保名称不会太长。输入数据时,我有时会漏掉一行,一切都会搞砸。我还本地化了我的应用程序,这只是花费时间的几倍。

我想知道什么是存储数据的更好方法,因为它是只读的,数据大小相对较小,我主要关心的是易于预填充数据。 Core DB 看起来很棒,但不是最容易预填充数据的。

我喜欢techzen 的建议,但我更喜欢一个关于如何将 NSArray 保存为静态文件的示例: Prepopulated stored data in iOS4

感谢任何建议。

【问题讨论】:

在阅读了您链接的答案后,我开始谷歌。我输入了“plist nsa”,谷歌将其自动补全为“plist nsarray 示例”,谷歌搜索的第一个结果是:How to read data structure from .plist file into NSArray 【参考方案1】:

我建议研究NSCoding 协议。考虑到 UIImage 符合此协议,您可以创建一个模型类,其具有符合NSCoding 的图像、标题、副标题等属性。将此对象的实例添加到NSArray,然后调用:

[NSKeyedArchiver archiveRootObject:theArray toFile:someFilePath];

【讨论】:

以上是关于为 iOS 应用程序存储预填充数据(图像 + 文本)的建议 [重复]的主要内容,如果未能解决你的问题,请参考以下文章

如何使用 SQLite 文件预加载 Core Data,该文件引用使用“外部存储”保存的图像?

iOS如何做预填充Core数据?

在 Phonegap iOS 应用程序中使用预填充数据库

iOS 7 预填充的 Core Data 数据库不包含所有数据

预填充核心数据存储:使用 JSON 属性列表还是 XML 文件?

如何交付带有预填充领域数据库的应用程序