198 votes

Comment arrondir les coins d'un bouton

J'ai une image rectangle (jpg) et je veux l'utiliser pour remplir le fond d'un bouton avec des coins arrondis dans xcode.

J'ai écrit ce qui suit :

UIButton *button = [[UIButton buttonWithType:UIButtonTypeRoundedRect] retain];
CGRect frame = CGRectMake(x, y, cardWidth, cardHeight);
button.frame = frame;
[button setBackgroundImage:backImage forState:UIControlStateNormal];

Cependant, le bouton que j'obtiens avec cette approche n'a pas ses coins arrondis : c'est plutôt un rectangle simple qui ressemble exactement à mon image originale. Comment puis-je obtenir à la place une image aux coins arrondis pour représenter mon bouton ?

Merci !

2voto

Kiran jadhav Points 1525

mis à jour pour Swift 3 :

J'ai utilisé le code ci-dessous pour rendre le coin de UIButton rond :

 yourButtonOutletName.layer.cornerRadius = 0.3 *
        yourButtonOutletName.frame.size.height

2voto

Adwait Gaikwad Points 43

Mise à jour de Swift 4

J'ai également essayé de nombreuses options, mais je n'ai pas réussi à obtenir un angle rond pour mon UIButton. J'ai ajouté le code de rayon d'angle à l'intérieur de l'élément viewDidLayoutSubviews() Résolu Mon problème.

func viewDidLayoutSubviews() {
        super.viewDidLayoutSubviews()
        anyButton.layer.cornerRadius = anyButton.frame.height / 2
    }

Nous pouvons également ajuster le cornerRadius comme suit

func viewDidLayoutSubviews() {
        super.viewDidLayoutSubviews()
        anyButton.layer.cornerRadius = 10 //Any suitable number as you prefer can be applied 
    }

2voto

elpsk Points 4120

Si vous voulez un coin arrondi seulement à un coin ou deux coins, etc... lisez ce post :

[ObjC] - UIButton avec coin arrondi - http://goo.gl/kfzvKP

C'est une sous-classe de XIB/Storyboard. Importez et définissez les frontières sans écrire de code.

1voto

Jayesh Nai Points 174

Pour iOS SWift 4

button.layer.cornerRadius = 25;
button.layer.masksToBounds = true;

1voto

Andy A Points 1032

Une autre réponse qui fixe également une bordure (ce qui le fait ressembler davantage à un bouton) se trouve ici ... Comment définir une bordure rectangulaire pour le type personnalisé UIButton ?

Prograide.com

Prograide est une communauté de développeurs qui cherche à élargir la connaissance de la programmation au-delà de l'anglais.
Pour cela nous avons les plus grands doutes résolus en français et vous pouvez aussi poser vos propres questions ou résoudre celles des autres.

Powered by:

X