2010-02-23 3 views
1

J'ai une boucle for qui crée plusieurs UIImageViews que j'ajoute à self.view Je le fais dans ma méthode init personnalisée.Comment puis-je accéder à UIImageViews qui sont sortis de la portée et qui partagent le même nom que plusieurs autres

- (id)init { 
if (self = [super init]) { 
    for (int i = o; i < [count]; i++) { //count is a variable I am using (typicly 3) 
     UIImageView *tmpImageView = [[UIImageView alloc] initWithImage[data getImage]]; 
     tmpImagView.tag = i; 
     tmpImageView.frame = self.view.frame; 
     [self.view addSubview:tmpImageView]; 
    } 
} 

Dans mon sur la méthode que je veux accéder à cette tmpImageView et changer ses propriétés comme transformer et cadre

- (void)otherMethod { 
    //Play with the tmpImageView's properties 
} 

Mais le tmpImageView est hors de portée. Comment y accéder Without using an NSMutableArray

Répondre

1
- (void)otherMethod { 
    UIImageView* tImageView = (UIImageView*) [self.view viewWithTag: someTag]; 
    //Play with the tmpImageView's properties 
} 
+0

Wow merci beaucoup, je ne comprenais pas comment utiliser 'viewWithTag:' Merci – Jaba

+0

Est-ce point de vue encore en mémoire, même avant que je devais mettre en œuvre ce? – Jaba

+0

oui, UIView conserve ses sous-vues, donc vous n'avez pas besoin de stockage supplémentaire pour eux – Vladimir