0

我有新闻门户应用程序,我希望用户在点击按钮时将当前正在阅读的整篇文章保存到 iphone 设备,以便他可以随时访问它。我也想知道一篇文章是否保存到用户列表而不是保存两次

4

1 回答 1

1

您将希望使用NSUserDefaults进行保存。

[prefsObject addStringToURL: urlString];
NSUserDefaults *userDefaults = [NSUserDefaults standardUserDefaults];
[userDefaults setObject:[prefsObject getNSArrayOfURLS] forKey:@"FavouriteURL"];
[userDefaults synchronise];
[userDefaults release];

prefsObject 是您编写的用于保存收藏夹的类。它可能只保存数组,但您可以在其中放置用于搜索、添加、删除等的便利函数。

urlString 是一个包含文章 URL 的 NSString。

addStringToURL 是一种将 urlString 添加到 NSMutableArray 的方法。

getNSArrayOfURLS 是一种返回带有所有 URL 的 NSMutableArray 的方法。

稍后,加载数据

NSUserDefaults *userDefaults = [NSUserDefaults standardUserDefaults];
[prefsObject initWithNSArray:(NSArray)[userDefaults objectForKey:@"FavouriteURL"]];

initWithNSArray 是一种使用 NSArray 加载 NSMutableArray 的方法,使用 NSArray 方法 mutableCopy,它返回一个 NSMutableArray。该方法可能看起来像

-(void)initWithNSArray:(NSArray*)arrayToLoad{
prefsArray = [arrayToLoad mutableCopy];
}

请注意,我没有测试过这个确切的代码,但我在我的应用程序中使用了类似的版本。

您可以在此处找到在 NSMutableArray 中搜索现有 URL 的解决方案。

于 2011-10-14T01:20:05.267 回答