web-dev-qa-db-fra.com

Quelle est la différence entre l'état mis en évidence et sélectionné de UIButton?

Quelqu'un peut-il me dire Quelle est la différence entre l'état Surligné et Sélectionné d'un UIButton?

50
Jamal Zafar

Selon la documentation :

État surligné d'un contrôle. Un contrôle entre dans cet état lorsqu'un contact entre et sort pendant le suivi et lorsqu'il y a un événement de retouche.

et

État sélectionné d'un contrôle. Pour de nombreux contrôles, cet état n'a aucun effet sur le comportement ou l'apparence. Mais d'autres sous-classes peuvent avoir une apparence différente selon leurselected state.

c'est la pure différence entre les états.

31
holex

Les réponses de 2012 ne sont pas incorrectes, mais certains pourraient trouver l'explication dans les documents UIControl pour être… anémique. Personnellement, je trouve cette explication dans le Guide de programmation de la vue de collection pour iOS pour être plus utile:

Il existe une distinction subtile mais importante entre l'état mis en évidence d'une cellule et son état sélectionné. L'état en surbrillance est un état de transition que vous pouvez utiliser pour appliquer des reflets visibles à la cellule pendant que le doigt de l'utilisateur touche toujours l'appareil. Cet état est défini sur YES uniquement lorsque la vue de collection suit les événements tactiles sur la cellule. Lorsque les événements tactiles s'arrêtent, l'état en surbrillance revient à la valeur NO. En revanche, l'état sélectionné ne change qu'après la fin d'une série d'événements tactiles, en particulier lorsque ces événements tactiles indiquent que l'utilisateur a tenté de sélectionner la cellule.

[…couper…]

enter image description here

Bien que cette documentation soit spécifiquement destinée aux cellules de vue de collection, l'explication est plutôt valable dans les frameworks Cocoa Touch.

79
clozach