2010-09-14 9 views
2

J'ai chargé des données XML (y compris des images, du texte, ...) à partir du serveur et j'ai affiché ces données sur l'écran de l'iPhone.Comment mettre en cache des données dans ios

Comment puis-je mettre en cache des données pour recharger cet écran lorsque je visite cet écran à un autre moment. Ce sera plus rapide. (ne pas besoin de recharger les données XML à nouveau)?

Merci.

Répondre

3

utiliser l'API EGOcache. Juste importer le fichier EGOCache.h dans votre classe

- (void)setObject:(id<NSCoding>)anObject forKey:(NSString*)key; 
-(void)setObject:(id)anObject forKey:(NSString*)key withTimeoutInterval:(NSTimeInterval)timeoutInterval; 
-(id)objectForKey:(NSString*)key; 

Utilisez la première méthode pour définir vos données avec un forKey. Si vous souhaitez définir le temps de cache, utilisez la seconde méthode.

Modifier

EGOCache enregistre vos données en permanence, Voir here à pour l'utilisation de nscache qui intègre différentes politiques d'élimination automatique.

0

Vous pouvez stocker le fichier XML lui-même dans le dossier de documents (ou dans un sous-dossier) après avoir téléchargé les données du serveur. Si vous avez analysé le fichier XML dans des tableaux et des dictionnaires, vous pouvez convertir les données en fichier plist et les stocker sur votre iphone lui-même. Regardez la méthode NSData:

- (BOOL) writeToFile: (NSString*)path atomically: (BOOL)useAuxiliaryFile; 
Questions connexes