2011-09-06 3 views
2

J'ai une application que j'écris qui ont 3 boutons avec une image de fond pour chaque bouton. Lorsque l'utilisateur touche l'un des boutons, je souhaite qu'un cadre vert apparaisse autour du bouton pendant 2 secondes puis disparaisse.Comment ajouter un cadre à UIButton

Je sais que je peux construire 2 images séparées avec et sans le cadre autour de l'image, mais cela entraînera le double de la quantité de fichiers.

Existe-t-il un autre moyen de le faire?

Répondre

0

Je ne pense pas qu'il existe un moyen de faire comme vous le souhaitez.

vous devez faire seulement deux images, une quand le bouton n'est pas sélectionné et l'autre quand il est sélectionné.

2

Oui, vous pouvez ajouter une bordure à une UIView (UIButton est une sous-classe de UIView) par l'accès aux propriétés du CALayer dans la vue:

button.layer.cornerRadius = 6; // if you want rounded corners  
button.layer.borderWidth = 2; 
button.layer.borderColor = [UIColor greenColor].CGColor; 

Vous devez importer QuartzCore.h dans le fichier pour être en mesure de faire référence aux déclarations de la couche:

#import <QuartzCore/QuartzCore.h> 

Vous pouvez activer la frontière en réponse à l'événement, puis baissez (ou vers le haut) toucher du bouton hors tension (borderWidth = 0) avec une minuterie.

+0

Merci, je vais vérifier. – user930499

+0

Salut progrmr, j'ai fait ce que vous avez dit mais dans le simulateur je ne vois pas le cadre vert du tout. Savez-vous y? – user930499

+0

Il est difficile de voir pourquoi quand je ne peux pas voir votre code. – progrmr

Questions connexes