'How to change keyboard background color in iOS?
I would like to know how to change the keyboard background color programmatically in iOS? The background is normally grey but I have already seen black background (behind letters).
Solution 1:[1]
For the dark background use:
mytextfield.keyboardAppearance = UIKeyboardAppearanceAlert;
Read to find more information about UITextInputTraits (use UIKeyboardAppearanceDark
at iOS 7+).
Solution 2:[2]
To change it globally, you can use appearance proxy in AppDelegate... I've tested it in iOS 8, Swift:
UITextField.appearance().keyboardAppearance = UIKeyboardAppearance.dark
Solution 3:[3]
In iOS 7, UIKeyboardAppearanceAlert
is deprecated, so use this instead:
mytextfield.keyboardAppearance = UIKeyboardAppearanceDark;
If you need to support both earlier iOSes and iOS 7, and you've created the necessary macros (per https://stackoverflow.com/a/5337804/588253), you can use this:
mytextfield.keyboardAppearance = (SYSTEM_VERSION_LESS_THAN(@"7.0") ? UIKeyboardAppearanceAlert : UIKeyboardAppearanceDark);
Solution 4:[4]
Updating to swift 3.0
let textFieldAppearance = UITextField.appearance()
textFieldAppearance.keyboardAppearance = .dark //.default//.light//.alert
Solution 5:[5]
Solution 6:[6]
SWIFT 4+: in the AppDelegate
UITextField.appearance().keyboardAppearance = .dark
Solution 7:[7]
Today just use myTextField.keyboardAppearance = .dark
Solution 8:[8]
Swift 5+ (TextView)
textView.keyboardAppearance = .dark
Solution 9:[9]
In Objectve-C
For Dark Keyboard
[UITextField appearance].keyboardAppearance = UIKeyboardAppearanceDark;
For Light keyboard
[UITextField appearance].keyboardAppearance = UIKeyboardAppearanceLight;
You can define this in AppDelegate to handle this globally.
Sources
This article follows the attribution requirements of Stack Overflow and is licensed under CC BY-SA 3.0.
Source: Stack Overflow