J'essaie de créer par programme un UIButton. Cependant, par défaut, il devient blanc (la couleur par défaut de ma barre de navigation, je pense que c'est pertinent). Je veux que ce soit simplement la couleur bleue par défaut d'Apple dans iOS7. J'ai réussi à changer la couleur pour son état par défaut, mais dès que je le sélectionne, le texte redevient blanc. Je n'arrive pas à comprendre comment le garder en bleu.
Quelqu'un pourrait-il m'expliquer s'il vous plaît comment créer un UIButton par programme et le faire agir de la même manière que si je l'avais créé dans le scénarimage?
Code actuel:
UIButton *cancelButton = [UIButton buttonWithType:UIButtonTypeCustom];
cancelButton.frame = CGRectMake(320 - 150, 0, 140, 40);
[cancelButton setTitle:@"Cancel" forState:UIControlStateNormal];
cancelButton.titleLabel.tintColor = [UIColor colorWithRed:0.0 green:122.0/255.0 blue:1.0 alpha:1.0];
cancelButton.titleLabel.textColor = [UIColor colorWithRed:0.0 green:122.0/255.0 blue:1.0 alpha:1.0];
Je vous remercie.
Essayez ce code:
UIButton *cancelButton = [UIButton buttonWithType:UIButtonTypeCustom];
[cancelButton setFrame:CGRectMake(320 - 150, 0, 140, 40)];
[cancelButton setBackgroundColor:[UIColor clearColor]];
[cancelButton setTitleColor:[UIColor blueColor] forState:UIControlStateNormal];
[cancelButton setTitleColor:[UIColor blueColor] forState:UIControlStateHighlighted]; // This will helps you during click time title color will be blue color
[cancelButton setTitle:@"Cancel" forState:UIControlStateNormal];
[cancelButton addTarget:self action:@selector(button_Action) forControlEvents:UIControlEventTouchUpInside];
[self.view addSubview:cancelButton];
Juste essayé avec
[cancelButton setTitleColor:[UIColor colorWithRed:0.0 green:122.0/255.0 blue:1.0/255.0 alpha:1.0] forState:UIControlStateNormal];
Pour plus d'informations, lisez la documentation officielle de UIButton
.
Avez-vous essayé cela
[cancelButton setTitleColor:[UIColor redColor] forState:UIControlStateNormal];
[cancelButton setTitleColor:[UIColor blueColor] forState:UIControlStateSelected];
Cela résoudra votre problème,
[cancelButton setTitleColor:YOUR COLOR forState:SPECIFIED STATE];
Les valeurs d'état sont:
UIControlStateNormal
UIControlStateHighlighted
UIControlStateDisabled
UIControlStateSelected
Essayez d'utiliser
- (void)setTitleColor:(UIColor *)color forState:(UIControlState)state
pour spécifier des couleurs pour tous les états requis.
Rapide:
let button = UIButton (type: UIButtonType.system)
Cela créera un bouton qui utilise la couleur de teinte standard, comme un bouton ajouté à un scénario dans le constructeur d'interface.