0

私のアプリでは、画像、音声、動画、テキストなど、さまざまな種類のデータをアップロードしています。ユーザーがアプリを終了して再度開いた場合でも、アップロードされた最新の 100 個のアイテムを表示できるようにする必要があります。このために、テーブル ビューを含むビューを作成します。テーブル ビューには、最近アップロードされた 100 個のアイテムが表示されます。今、私は NSUserDefaults を介してこれを実装したいと考えています。画像、オーディオ、およびビデオの場合、iphone はパスまたは URL を返しますが、これを NSUserDefaults に保存する必要がありますが、テーブル ビューには配列を設定する必要があります。テーブルビューにデータを入力します。または、実装が簡単な NSUserDefaults よりも優れたオプションはありますか?

4

1 に答える 1

0

これ以上のデータがある場合は、sqlite データベースを試してみてください。これだけのデータだとしたら、これだけのためにデータベースを作るのはかなりやり過ぎに思えます。次のような方法で配列を NSUserDefaults に保存できます。

[[NSUserDefaults standardUserDefaults] setObject:[NSArray arrayWithObject:@"sd"] forKey:@"k"];
[[NSUserDefaults standardUserDefaults] synchronize];

NSArray *array = [[NSUserDefaults standardUserDefaults] objectForKey:@"k"];
if( array == nil )  {
    //No data
}
else {
    for( NSString *string in array ) {
        NSLog(@"String: %@",string);
    }
}

欠点は、カスタム オブジェクトを配列に格納する場合、オブジェクトを手動でエンコードする必要があることです。詳細については、この記事を参照してください。

于 2013-04-09T13:10:27.483 に答える