0

私はnewsportalアプリケーションを持っており、ユーザーがボタンを押したときに、現在読んでいる記事全体をiPhoneデバイスに保存して、いつでもアクセスできるようにしたいと考えています。また、記事がユーザー リストに保存されているかどうかを知りたいのですが、2 回保存しないでください。

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 は、NSMutableArray を返す NSArray メソッド mutableCopy を使用して、NSArray で NSMutableArray をロードするメソッドです。その方法は次のようになります

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

この正確なコードをテストしたわけではありませんが、アプリで同様のバージョンを使用したことに注意してください。

NSMutableArray で既存の URL を検索する方法については、こちらを参照してください。

于 2011-10-14T01:20:05.267 に答える