J'ai essayé de changer les couleurs du texte d'un bouton, mais il reste toujours blanc.
isbeauty = UIButton()
isbeauty.setTitle("Buy", forState: UIControlState.Normal)
isbeauty.titleLabel?.textColor = UIColorFromRGB("F21B3F")
isbeauty.titleLabel!.font = UIFont(name: "AppleSDGothicNeo-Thin" , size: 25)
isbeauty.backgroundColor = UIColor.clearColor()
isbeauty.layer.cornerRadius = 5
isbeauty.layer.borderWidth = 1
isbeauty.layer.borderColor = UIColorFromRGB("F21B3F").CGColor
isbeauty.frame = CGRectMake(300, 134, 55, 26)
isbeauty.addTarget(self,action: "first:", forControlEvents: UIControlEvents.TouchUpInside)
self.view.addSubview(isbeauty)
J'ai aussi essayé de changer le rouge, noir, bleu, mais rien ne se passe.
Vous devez utiliser func setTitleColor(_ color: UIColor?, forState state: UIControlState)
de la même manière que vous définissez le texte du titre actuel. Docs
isbeauty.setTitleColor(UIColorFromRGB("F21B3F"), forState: .Normal)
Swift UI solution
Button(action: {}) {
Text("Button")
}.foregroundColor(Color(red: 1.0, green: 0.0, blue: 0.0))
Swift 3, Swift 4, Swift 5
pour améliorer les commentaires. Cela devrait fonctionner:
button.setTitleColor(.red, for: .normal)
Exemple de réglage de la couleur du titre du bouton
btnDone.setTitleColor(.black, for: .normal)
func setTitleColor(_ color: UIColor?, for state: UIControl.State)
Paramètres:
couleur:
La couleur du titre à utiliser pour l'état spécifié.état:
État qui utilise la couleur spécifiée. Les valeurs possibles sont décrites dans UIControl.State.
échantillon:
let MyButton = UIButton()
MyButton.setTitle("Click Me..!", for: .normal)
MyButton.setTitleColor(.green, for: .normal)
C'est Swift 5 réponse compatible. Si vous souhaitez utiliser l’une des couleurs intégrées, vous pouvez simplement utiliser
button.setTitleColor(.red, for: .normal)
Si vous voulez des couleurs personnalisées, créez d'abord une extension pour UIColor comme ci-dessous.
import UIKit
extension UIColor {
static var themeMoreButton = UIColor.init(red: 53/255, green: 150/255, blue: 36/255, alpha: 1)
}
Puis utilisez-le pour votre bouton comme ci-dessous.
button.setTitleColor(UIColor.themeMoreButton, for: .normal)
Conseil: Vous pouvez utiliser cette méthode pour stocker des couleurs personnalisées à partir du code de couleur rgba et les réutiliser dans votre application.