Je cherche un moyen de stocker des références à des variables dans un NSMutableArray. Comme les variables vont être créées de manière dynamique en fonction de ce que l'utilisateur a choisi, je veux pouvoir simplement trier ce tableau et obtenir des références à ces variables créées. En cas de problème, je crée un projet iPhone. Cependant, lorsque je tente de le faire en utilisant le code suivant:Enregistrer des références à une variable dans NSMutableArray
for (int a = 0; a < 10; a++)
{
UIView *tempView;
[listingOfViews addObject:tempView];
}
for (int a = 0; a < [listingOfViews count]; a++)
{
[listingOfViews objectAtIndex:a] = defaultViewStructure;
}
Il me donne cette erreur: « Erreur: lvalue nécessaire comme opérande gauche d'affectation »
Toutes les idées?
EDIT: Aussi, je reçois cette erreur: "Erreur: demande de membre 'taille' dans quelque chose pas une structure ou d'une union"
Lorsque je tente de faire
for (int a = 0; a < [listingOfViews count]; a++)
{
[listingOfViews objectAtIndex:a].size.height = ...
}
Salut Rob: Je ne veux pas vraiment remplacer l'objet, il suffit de définir la valeur de l'objet à la valeur de l'autre objet. Cela fonctionne très bien quand je le fais sans utiliser un NSMutableArray. De plus, le code ci-dessus est simplement un exemple de ce que j'essaie de faire (mon code actuel est plus long) - Dans le cas réel, j'initialise les valeurs de l'UIView. – PF1
Que voulez-vous dire par "définir la valeur de l'objet?" Un UIView n'a pas de valeur. Vous avez, cependant, un pointeur sur un UIView (ce que vous voulez), et vous pouvez donc remplacer le pointeur dans le tableau par un pointeur vers un objet différent, ce que je suppose que vous voulez, et ce que cette méthode ferait faire. –
Vous obtenez le pointeur vers la vue. Si vous avez indiqué [[listOfViews objectAtIndex: a] setNeedsDisplay], cela fonctionnerait correctement. Mais qu'attendez-vous [listingOfViews objectAtIndex: a] = tempView pour faire réellement? Voulez-vous modifier quels objets sont dans le tableau (which replaceObject: atIndex: does)? Ou essayez-vous en quelque sorte de modifier quelque chose en dehors du tableau dans cette ligne de code? Quand vous dites "références" voulez-vous dire comme des références C++ (MyClass &)? Il n'y a pas de telles choses dans ObjC, c'est pourquoi je suis inquiet que vous essayez de penser en C++ en écrivant ObjC, ce qui ne fonctionnera pas. –