Quelle est la bonne façon d'ajouter des objets dans NSMutableArray qui est fortement défini par la propriété.Quelle est la bonne façon d'éviter de conserver le cycle pendant l'utilisation des blocs
[tapBlockView setTapBlock:^(UIImage* image) {
[self.myImageArray addObject:image]; // self retain cycle
}
Si je créerai faible quelque chose de référence comme
__weak NSMutableArray *array = self.myImageArray;
[tapBlockView setTapBlock:^(UIImage* image) {
[array addObject:image]; // If I will do this then how will I update original Array ?
}
J'ai aussi essayé
__weak id weakSelf = self;
[tapBlockView setTapBlock:^(UIImage* image) {
[weakSelf storeImageInaNewMethod:image]; // Calling SToreImageInaNewMethod
}
et
-(void)storeImageInaNewMethod:(UIImage*)image {
[self.myImageArray addObject:image]; // This again retaining cycle
}
Quelle est la bonne façon de mettre à jour l'objet original défini par la propriété?
Les blocs sont comme fonction pointers.Can't vous définissez simplement le bloc à zéro lorsque vous n'avez pas en avez plus besoin? –