Assurez-vous que le type de bouton est personnalisé comme quelqu'un d'autre l'a déjà dit. En procédant comme suit, vous retrouverez ces coins arrondis :
[self.myButton.layer setCornerRadius:8.0f];
[self.myButton.layer setMasksToBounds:YES];
[self.myButton.layer setBorderWidth:1.0f];
[self.myButton.layer setBorderColor:[[UIColor whiteColor] CGColor]];
self.myButton.backgroundColor = [UIColor redColor];
Bien que, personnellement, je sois un grand fan des boutons en dégradé plutôt qu'en couleurs unies... De plus, la couleur de fond n'a pas d'états différents, alors que les images de fond en ont :
[self.myButton setBackgroundImage:[UIImage imageNamed:@"gradient.png"] forState:UIControlStateNormal];
En utilisant une image, votre bouton s'assombrira avec la sélection (ou vous pourriez fournir une image de fond différente par état pour faire quelque chose de différent). Cela ne se produira pas avec la couleur d'arrière-plan, l'arrière-plan restera toujours le même, seule l'étiquette de votre bouton changeant par état.