Je règle le titre d'un UIButton
dynamiquement en utilisant [btn setTitle:x forState:UIControlStateNormal]
. Est-il possible de dire par exemple, changer l'image d'arrière-plan de ce bouton, mais le référencer par son nom de titre? L'utilisation de titres de boutons comme ça est une mauvaise idée.Cibler un UIButton par son titre
0
A
Répondre
4
Si votre application est localisée pour une langue différente, le bouton est susceptible de se retrouver avec un titre différent et votre code va se casser. Cependant, UIView
a quelque chose appelé une étiquette. Une balise est simplement une valeur entière que vous pouvez affecter à une vue à des fins d'identification. Si vous attribuez des valeurs de balise uniques à vos boutons, vous pouvez rechercher un bouton spécifique en demandant à son aperçu de le rechercher. Pour ce faire, en envoyant le viewWithTag:
message au superview du bouton:
NSInteger kTagForMyButton = 7;
UIButton *myButton = (UIButton *)[theSuperview viewWithTag:kTagForMyButton];
Sauf si vous avez une bonne raison d'utiliser des balises, je vous recommande le maintien d'une référence au bouton de sorte que vous n'avez pas à la chercher chaque fois que vous voulez le changer.