web-dev-qa-db-fra.com

Comment changer la couleur de fond du clavier sous iOS?

Je voudrais savoir comment changer la couleur de fond du clavier par programmation dans iOS? Le fond est normalement gris, mais j’ai déjà vu un fond noir (derrière des lettres).

37
Matthieu Lucas

Pour le fond sombre utiliser

    mytextfield.keyboardAppearance = UIKeyboardAppearanceAlert;

Lisez pour en savoir plus sur UITextInputTraits (utilisez UIKeyboardAppearanceDark dans iOs 7+).

50
A-Live

Dans iOS 7, UIKeyboardAppearanceAlert est obsolète, utilisez plutôt ceci:

mytextfield.keyboardAppearance = UIKeyboardAppearanceDark;

Si vous devez prendre en charge les versions précédentes d'iOS et iOS 7 et que vous avez créé les macros nécessaires (par https://stackoverflow.com/a/5337804/588253 ), vous pouvez utiliser ceci:

mytextfield.keyboardAppearance = (SYSTEM_VERSION_LESS_THAN(@"7.0") ? UIKeyboardAppearanceAlert : UIKeyboardAppearanceDark);
26
Mr. T

Pour le changer globalement, vous pouvez utiliser un proxy d'apparence dans AppDelegate ... Je l'ai testé sous iOS 8, Swift:

UITextField.appearance().keyboardAppearance = .Dark
25
Soheil Jadidian

Mise à jour vers Swift 3.0

let textFieldAppearance = UITextField.appearance() textFieldAppearance.keyboardAppearance = .dark //.default//.light//.alert

8
Emmanouil Nicolas

Si vous utilisez Interface Builder, vous pouvez définir l'aspect du clavier dans l'inspecteur d'attributs:

 enter image description here

2
nambatee