2012-10-05 4 views
0

Je travaille sur une application qui tire dynamiquement les images à partir du dossier d'images et les affiche dans une ScrollView, très similaire à this tutorial code d'Apple (voir la méthode viewDidLoad):Faire dynamique ImageViews cliquable

Chaque image se met dans un ImageView. Maintenant, je veux rendre chaque image cliquable, mais comme il est dynamique je ne peux pas créer une quantité fixe d'IBActions + ce serait très répétitif et copier/coller, ce que je veux éviter.

Donc, fondamentalement ce code:

-(IBAction)Fork { 
[buttonImageView setImage:[UIImage imageNamed:@"Fork.png"]]; 
} 

mais pour chaque image qui est créée. Je suis particulièrement confus parce que je ne peux pas "connecter" les IBActions au bouton via le Storyboard.

J'apprécie n'importe quelle aide avec des conseils de code puisque je suis un débutant.

+0

Ajoutez un outil de reconnaissance gestuelle à votre vue d'image. Au robinet ont une méthode appelée. Avoir la même méthode appelée. Dans votre affichage d'image, ajoutez un tag. Lorsque la méthode est appelée, recherchez la balise et vous êtes tous définis. –

Répondre

1

Vous souhaitez probablement que le clic soit géré par une seule action et transmettez la vue de l'image en tant qu'expéditeur, où vous pouvez différencier votre action en conséquence.

Vous pouvez utiliser un UITapGestureRecognizer pour démarrer rapidement:

UIImageView *imageView = ... // However you're creating it 
UITapGestureRecognizer *tapper = [[[UITapGestureRecognizer alloc] init] autorelease]; 
[imageView addGestureRecognizer:tapper]; 
[tapper addTarget:self action:@selector(handleTap:)]; 

Mettre en oeuvre le gestionnaire du robinet comme:

- (void)handleTap:(UITapGestureRecognizer *)recognizer 
{ 
    UIImageView *imageView = recognizer.view; 
    imageView.image = [UIImage imageNamed:@"Fork.png"]; 
} 

Si vous avez besoin de faire quelque chose comme l'ont ajuster l'image lorsque vous appuyez dessus, vous voudrez probablement essayer un UIButton avec le type personnalisé et définir l'image en conséquence. Quoi qu'il en soit, espérons que cela aide!

+0

Merci Carl, l'UITapGestureRecognizer était exactement ce que je cherchais! – ernesto50

+0

@ ernesto50 super, heureux je pourrais aider! –