iphone - 如何保存书签数据?

标签 iphone objective-c cocoa-touch uitableview nsstring

我正在为我的应用程序创建一个非常简单的书签菜单。我只需要为每个对象保存 3 个字符串。

我正在考虑使用核心数据,但由于各种原因我不希望它与我的核心数据库连接。那么我还有什么其他简单的选择呢? NSUserDefaults 还是 .plist?

我只需要保存每个对象的 3 个字符串,然后将它们加载到要查看的表格 View 中。

最佳答案

我推荐 NSUserDefaults - 当然更容易。我倾向于仅将 plist 文件用于我希望作为开发人员可编辑的静态数据,但在应用程序中希望它是只读的(例如嵌入 map 图像上对象的坐标)。

根据您的描述,您可能希望存储包含 NSDictionary 的 NSArray。

// 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];

关于iphone - 如何保存书签数据?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/7101319/

相关文章:

iphone - NSUserDefaults 与 NSKeyedArchiver

ios - Xcode - 如何修复 'NSUnknownKeyException' ,原因 : … this class is not key value coding-compliant for the key X"error?

iphone - NSPredicate 过滤空格和字母数字

iphone - Objective C 图像处理

ios - iOS 7.0 中的 MGSpiltViewController 问题

带有 + 的 Objective-C 类名

objective-c - objective-c 中 self.myivar 和 self->myivar 的区别

objective-c - 创建始终具有相同数据并且在不同时间需要的 NSDictionary 的最佳方法

ios - Unity Facebook 插件在登录后终止应用程序(iOS)

iphone - Cocoa/iPhone 中的多点触摸检测