2009-11-12 4 views
9

J'ai plusieurs UIButtons dans mon application avec différents graphiques pour leurs états On/Off. Les petits boutons s'affichent tous correctement sans scintillement, mais le bouton plus large (320 x 90 pixels) scintille en noir sur le bouton lorsqu'il est enfoncé jusqu'à 75% du temps. C'est sur l'iPhone, pas sur le simulateur. J'ai défini différentes combinaisons d'images d'état de UIButton par défaut, en surbrillance, sélectionnées et désactivées dans IB mais je n'arrive toujours pas à me débarrasser de ce scintillement. Y a-t-il autre chose que je peux essayer?UIButton scintille lorsqu'il est pressé

+0

Modifiez-vous le bouton du tout pendant l'événement enfoncé? – Josh

+0

Une fois cet UIButton enfoncé, il appelle une fonction qui désactive le bouton pendant le traitement sur un thread d'arrière-plan. Ceci est différent des autres UIButtons et cause probablement le problème, mais je ne peux obtenir aucune combinaison d'images d'état UIButton pour empêcher le scintillement. – Ian

+0

Assurez-vous que vous ne désactivez pas, ou d'ailleurs accéder à tout votre bouton ou tout autre élément de l'interface de votre thread d'arrière-plan. Cela pourrait causer le problème. Gardez dans le fil d'arrière-plan uniquement le traitement qui n'implique pas l'interface. – luvieere

Répondre

25

Si vous faites quelque chose comme button.selected = !button.selected dans votre gestionnaire, j'ai aussi eu ce problème. Je l'ai réparé en appelant button.highlighted = NO.

+0

Cela a fonctionné pour moi. J'ai un bouton où les états sélectionnés et en surbrillance utilisent la même image (différente de l'image normale) et il y a eu un scintillement lors du passage de surligné à sélectionné. –

+0

David à droite, appelant 'button.highlighted = NO' juste avant d'appeler' button.selected = NO' (ou 'button.selected =! Button.selected') a résolu le problème pour moi aussi. –

+0

même ... parfait :) – VTS12

Questions connexes