如何保存书签数据? [英] How To Save Data For Bookmarks?

查看:144
本文介绍了如何保存书签数据?的处理方法,对大家解决问题具有一定的参考价值,需要的朋友们下面随着小编来一起学习吧!

问题描述

我为我的应用程式建立了一个非常简单的书签选单。我只需要保存每个对象3个字符串。

I'm creating a very simple bookmarks menu for my app. I just need to save 3 strings for each object.

我正在考虑使用核心数据,但我不想因为各种原因而与核心数据库连接。因此,我还有什么其他简单的选择? NSUserDefaults或.plist?

I was thinking of using core data but I don't want this to be connected with my core database for various reasons. Therefore what other easy options do I have? NSUserDefaults or .plist?

我只需要为每个对象保存3个字符串,然后将它们加载到一个表视图中以供查看。

I just need to save the 3 strings for each object then load them into a table view to be viewed.

推荐答案

我建议NSUserDefaults - 当然更容易。我倾向于只使用plist文件作为静态数据,我想要作为开发人员可编辑,但从应用程序想要它是只读的(如嵌入式地图图像上的对象的坐标)。

I'd recommend NSUserDefaults - is certainly easier. I tend to only use plist files for static data that I want to be editable as the developer, but from the application want it to be read-only (such as coordinates for objects on an embedded map image).

在你的描述中,你可能想要存储一个包含NSDictionary的NSArray。

From your description, you would probably want to store an NSArray containing NSDictionary.

// Get the user defaults object
NSUserDefaults *userDefaults = [NSUserDefaults standardUserDefaults];


// Load your bookmarks (editable array)
NSMutableArray *bookmarks = [[NSMutableArray alloc]init];
NSArray *bookmarksLoaded = [userDefaults arrayForKey:@"bookmarks"];
if (bookmarksLoaded != nil) {
    [bookmarks initWithArray:bookmarksLoaded];
} else {
    [bookmarks init];
}

// Add a bookmark
NSMutableDictionary *bookmark = [NSMutableDictionary new];
[bookmark setValue:@"value" forKey:@"name"];
[bookmark setValue:@"value" forKey:@"description"];
[bookmark setValue:@"value" forKey:@"code"];
[bookmarks addObject:bookmark];

// Save your (updated) bookmarks
[userDefaults setObject:bookmarks forKey:@"bookmarks"];
[userDefaults synchronize];

// Memory cleanup
[bookmarks release];

这篇关于如何保存书签数据?的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持IT屋!

查看全文
登录 关闭
扫码关注1秒登录
发送“验证码”获取 | 15天全站免登陆