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?
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
Utilisez la propriété correcte pour modifier l'état. Par exemple
button.isSelected = true
ou
button.isHighlighted = true