サーバーから XML データ (画像、テキストなどを含む) を読み込み、そのデータを iPhone の画面に表示しました。
もう一度その画面にアクセスしたときに、その画面を再ロードするためにデータをキャッシュするにはどうすればよいですか。それはより速くなります。(XML データを再度ロードする必要はありません)?
ありがとうございました。
サーバーから XML データ (画像、テキストなどを含む) を読み込み、そのデータを iPhone の画面に表示しました。
もう一度その画面にアクセスしたときに、その画面を再ロードするためにデータをキャッシュするにはどうすればよいですか。それはより速くなります。(XML データを再度ロードする必要はありません)?
ありがとうございました。
EGOcache APIを使用します。クラスに EGOCache.h ファイルをインポートするだけです
- (void)setObject:(id<NSCoding>)anObject forKey:(NSString*)key;
-(void)setObject:(id)anObject forKey:(NSString*)key withTimeoutInterval:(NSTimeInterval)timeoutInterval;
-(id)objectForKey:(NSString*)key;
forkey を使用してデータを設定するには、最初の方法を使用します。キャッシュ時間を指定する場合は、2 番目の方法を使用します。
編集
EGOCache はデータを永久に保存します。さまざまな自動削除ポリシーが組み込まれている NSCache の使用法については、こちらを参照してください。
サーバーからデータをダウンロードした後、XML ファイル自体をドキュメント フォルダー (またはサブフォルダー) に保存できます。XML ファイルを配列と辞書に解析した場合は、データを plist ファイルに変換して、iPhone 自体に保存できます。NSData メソッドを見てください。
- (BOOL) writeToFile: (NSString*)path atomically: (BOOL)useAuxiliaryFile;