Dans mon application iPhone, j'utilisais des entiers pour suivre un grand nombre de variables. Je les ai déclarés et initialisés dans mon fichier AppDelegate (il s'agit d'une application multiview), puis si je les déclarais dans les autres vues (classes) et que les valeurs resteraient les mêmes. De cette façon, je pourrais définir Money = 200 dans le fichier App Delegate, puis dans une autre vue, déclarez simplement, "int Money"; et il serait déjà réglé à 200 (ou quoi que ce soit d'argent.)NSMutableDictionary Accès à partir de différentes classes
Cependant, si je stocke toutes ces variables dans un dictionnaire (ce que je fais maintenant), comment puis-je accéder à ce dictionnaire de différentes classes/vues? Je ne peux pas simplement le "déclarer" à nouveau, j'ai déjà essayé ça. Je pense que cela a à voir avec le dictionnaire étant un objet, et donc il doit être référencé ou quelque chose.
Je dois pouvoir accéder au même dictionnaire à partir de toutes les vues différentes. Initialiser le dictionnaire et ajouter des trucs dessus fonctionne correctement, mais dans une autre classe.
#import "OverviewController.h"
@implementation OverviewController
@synthesize lblMoney;
@synthesize lblSheep;
@synthesize lblWool;
@synthesize lblFatness;
@synthesize lblCapacity;
@synthesize lblShepherds;
int varMoney;
NSMutableDictionary *theHeart;
- (void)viewWillAppear:(BOOL)animated {
varMoney = [[theHeart objectForKey:@"Money"] intValue];
}
Vous pouvez voir que j'essaie d'initialiser à nouveau le dictionnaire pour cette classe, mais cela ne fonctionne évidemment pas. Je veux simplement initialiser et configurer le dictionnaire une fois, dans le fichier AppDelegate, puis accéder à ce dictionnaire à partir des autres classes pour y changer des choses. Y a-t-il un moyen de faire cela?