我從服務器加載XML數據(包括圖像,文本等),並在iPhone屏幕上顯示該數據。如何在iOS中緩存數據
如何在其他時間訪問該屏幕時緩存數據以重新加載該屏幕。它會更快。 (不需要重新加載XML數據)?
謝謝。
我從服務器加載XML數據(包括圖像,文本等),並在iPhone屏幕上顯示該數據。如何在iOS中緩存數據
如何在其他時間訪問該屏幕時緩存數據以重新加載該屏幕。它會更快。 (不需要重新加載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設置你的數據的第一個方法。 如果您要分隔緩存時間,則使用第二種方法。
編輯
EGOCache將永久保存您的數據,請參見here爲NSCache的使用是整合各種自動刪除策略。
從服務器下載數據後,您可以將XML文件本身存儲到文檔文件夾(或某些子文件夾)。 如果您已將XML文件解析爲數組和字典,則可以將數據轉換爲plist文件並將其保存到iphone本身。 看NSData的方法:
- (BOOL) writeToFile: (NSString*)path atomically: (BOOL)useAuxiliaryFile;