如何在iOS中更改键盘背景颜色?

Mat*_*cas 46 iphone ios iphone-keypad

我想知道如何在iOS中以编程方式更改键盘背景颜色?背景通常是灰色的,但我已经看到黑色背景(字母后面).

A-L*_*ive 53

适合深色背景使用

mytextfield.keyboardAppearance = UIKeyboardAppearanceAlert;
Run Code Online (Sandbox Code Playgroud)

阅读以查找有关UITextInputTraits的更多信息(UIKeyboardAppearanceDark在iOs 7+上使用).


Soh*_*ian 29

要在全局范围内更改它,您可以在AppDelegate中使用外观代理...我已经在iOS 8中测试了它,Swift:

UITextField.appearance().keyboardAppearance = UIKeyboardAppearance.dark
Run Code Online (Sandbox Code Playgroud)


Mr.*_*. T 27

在iOS 7中,UIKeyboardAppearanceAlert已弃用,因此请改用:

mytextfield.keyboardAppearance = UIKeyboardAppearanceDark;
Run Code Online (Sandbox Code Playgroud)

如果你需要支持早期的iOS和iOS 7,并且你已经创建了必要的宏(根据/sf/answers/373646311/),你可以使用:

mytextfield.keyboardAppearance = (SYSTEM_VERSION_LESS_THAN(@"7.0") ? UIKeyboardAppearanceAlert : UIKeyboardAppearanceDark);
Run Code Online (Sandbox Code Playgroud)


小智 9

更新到swift 3.0

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

  • 我知道,我问的是你有没有理由不这么做? (3认同)

nam*_*tee 5

如果您使用 Interface Builder,则可以在属性检查器中设置键盘外观:

在此输入图像描述