J'ai 10 UIImageViews qui font la même chose (ils ont des méthodes void qui changent leur image avec une minuterie). Mon UIImageView est une prise et je veux connecter les 10 imagesViews à la même prise, mais le constructeur d'interface ne me le permet pas.
J'ai trouvé qu'il existe une solution, IBOutletCollection. Quelqu'un peut-il m'expliquer comment utiliser cela pour connecter plusieurs imagesViews à la même prise?
Déclarez une propriété pour contenir vos images, puis connectez-les dans le générateur d'interface comme d'habitude
@property (nonatomic, strong) IBOutletCollection(UIImageView) NSArray *imageViews;
c'est juste un NSArray
normal mais quand la plume est chargée elle sera remplie avec vos imagesView
Mise à jour
Dans le fichier d'en-tête pour votre contrôleur de vue qui a les multiples images, vous devez ajouter la propriété ci-dessus - cela peut ressembler à ceci:
@interface MyViewController : UIViewController
@property (nonatomic, strong) IBOutletCollection(UIImageView) NSArray *imageViews;
// other properties
@end
Maintenant, dans le générateur d'interface, vous connectez toutes les imagesView à cette seule propriété.
Maintenant, je travaille simplement avec la collection imageViews
for (UIImageView *imageView in self.imageViews) {
imageView.image = someImage;
}