UIButton Encarts pour différents États
-
27-10-2019 - |
Question
J'ai un UIBarButtonItem contenant un bouton, sur lequel j'ai mis des images d'arrière-plan personnalisé pour les états pressés / non sertis. L'image emboutie est déplacée vers le bas par 4px, de sorte que le texte lors de son look non sertis décentré verticalement. Je sais que je peux utiliser [button setTitleEdgeInsets:UIEdgeInsetsMake(10.0, 10.0, 0.0, 0.0)]
pour changer la position de l'étiquette de texte, mais je peux le faire que pour un certain état de contrôle (unpressed)?
Si ce moyen UIButton le sous-classement, aurais-je t gérer tous moi-même dessin dans drawRect?
La solution
Non, vous ne devriez pas avoir à gérer vous-même dessiner si vous subclassed UIButton
. Une approche simplement la valeur-clé observer les enabled
et les propriétés selected
au sein de votre sous-classe, puis réglez juste le bord à une valeur empiècements appropriée chaque fois que les changements d'état. Cette question se rapporte ici pour observer le bouton pour les changements d'état.