web-dev-qa-db-fra.com

Comment changer l'état UIButton par programme dans Swift

Je développe une application pour dessiner à l'écran. J'ai un panneau d'outils avec un tas de boutons. Certains d'entre eux doivent être désactivés ou enfoncés en fonction de l'action actuelle de l'utilisateur. Comment puis-je modifier UIControlState des boutons par programmation en considérant que la propriété "state" est en lecture seule? Si c'est impossible, quelle alternative à cette fin?

8
Oleh Liskovych

Je pense que vous êtes confus. UIControlState est utilisé pour configurer des cibles/actions, ou pour changer l'apparence du bouton pour des états spécifiques (Ainsi, par exemple, vous pouvez spécifier l'image utilisée quand elle est sélectionnée, et une image différente pour quand le n'est pas dans l'état sélectionné.)

Si vous souhaitez modifier l'état sur sélectionné, il vous suffit de définir la propriété sélectionnée.

button.isSelected = true

De même pour isEnabled:

button.isEnabled = false //disable the button
18
Duncan C

Utilisez la propriété correcte pour modifier l'état. Par exemple

button.isSelected = true

ou

button.isHighlighted = true
4
Retterdesdialogs