2010-04-19 7 views
0

Je veux faire stocker ma variable de programmation, par exemple, les collections de fichiers image, aussi la taille de l'image, etc. Il peut être changé au cours du développement, mais il ne changera pas au moment de l'exécution. Donc, je considère utiliser un plist. Mais en utilisant un plist besoin de le lire régulièrement, il semble très peu pratique. Donc, je pense définir toute la variable sur un fichier de classe. Qu'est-ce que tu penses? des idées là-dessus? thz ....Quelle est la meilleure pratique sur la programmation de la variable de programmation sur iPhone?

Répondre

1

[NSUserDefaults standardUserDefaults] est l'approche à adopter si vous avez besoin de mettre à jour des valeurs pendant l'exécution.

Accéder à ceci est assez rapide pour que vous puissiez avoir un magasin de clé-valeur d'accès aléatoire qui persiste. L'avantage supplémentaire si vous ne modifiez pas au moment de l'exécution est que vous pouvez modifier le plist directement pendant le développement dans le simulateur.

Si les valeurs-clés sont réellement corrigées, faites-les avec un plist dans l'ensemble d'applications. Vous pouvez charger en mémoire au démarrage ou à la demande par:

NSString *someListingPath = [[NSBundle mainBundle] pathForResource:@"someList" ofType:@"plist"]; 
self.variableList= [[NSArray alloc] initWithContentsOfFile:someListingPath]; 

NSDictionary a également un initWithContentsOfFile: méthode pour charger des données à partir d'un plist.

Vous pouvez utiliser la même technique pour charger des images à partir de l'ensemble. Vous pouvez jeter un oeil à la Bundle Programming Guide pour plus de conseils.

0

La méthode la plus simple consiste à créer un tableau ou un dictionnaire pour contenir les informations d'application. Lorsque l'application démarre, lisez le plist en mémoire. Lorsque l'application quitte, écrivez la collection à une plist.

Vous souhaiterez probablement conserver des images sur le disque jusqu'à ce que vous en ayez besoin et simplement stocker les chemins d'accès aux fichiers dans la collection afin de pouvoir les lire si nécessaire.

Si vous devez stocker de petites quantités d'informations ou d'informations sur les préférences d'application, vous devez utiliser NSUserDefaults.

Pour des informations plus complexes, vous avez besoin d'un modèle de données, c'est-à-dire d'un objet dédié pour gérer les données d'application. Selon la complexité, la taille et la structure de l'information, vous pouvez (1) sérialiser l'objet (2) utiliser des données de base (3) utiliser SQL.

Questions connexes