web-dev-qa-db-fra.com

UIButton Padding in Swift 3

J'ai donc passé deux jours à essayer de comprendre comment ajouter un rembourrage autour de UIButton dans Swift 3. J'ai défini une image personnalisée (pas une image d'arrière-plan) et j'ai essayé d'augmenter la zone de prise avec le code suivant:

backButton.imageEdgeInsets = UIEdgeInsets(top: -44, left: -44, bottom: -44, right: -44)

Mais ça ne marche pas! Mon plus grand succès est que le bouton lui-même devient plus grand avec une zone de prise qui reste ridiculement petite. S'il vous plaît, aide . enter image description here

13
Andriyas Redel

Vous pouvez augmenter la zone capturable avec des insertions de contenu. Le cadre du bouton augmente également, mais maintient la taille de votre contenu tout en créant une zone de prise invisible plus grande.

En définissant l'encart gauche sur 0, vous pouvez faire apparaître l'image complètement à gauche, si vous essayez de faire en sorte que la "connexion" apparaisse plus près de votre flèche, mais je ne sais pas si c'est ce que vous êtes essayer d'accomplir.

enter image description here

Ou par programmation:

button.contentEdgeInsets = UIEdgeInsets(top: 44, left: 0, bottom: 44, right: 44)

Vous pouvez également ajouter votre image et votre titre dans un seul bouton, puis définir les images en incrustation gauche sur 0 et les titres en incrustation gauche sur 20 par exemple, et créer l'effet que vous recherchez. Encore une fois, en supposant.

enter image description here

47
Frankie