如何为整个 App 设置 UIKeyboard-Style?
Posted
技术标签:
【中文标题】如何为整个 App 设置 UIKeyboard-Style?【英文标题】:How to set the UIKeyboard-Style for the whole App? 【发布时间】:2013-01-31 18:50:37 【问题描述】:我目前正在尝试全局设置键盘样式,但我的方法不起作用。
我尝试使用UIAppearance
并将这行代码放入 AppDelegate 中:
[[UITextField appearance] setKeyboardAppearance:UIKeyboardAppearanceAlert];
但我在控制台上得到的是以下内容:
[UISearchBarTextField _UIAppearance_setKeyboardAppearance:]: unrecognized selector sent to instance 0xa1897e0
有什么办法解决这个问题吗?
【问题讨论】:
您找到解决方案了吗? 【参考方案1】:ios7 为 UITextFields 扩展了UIAppearance
协议,因此您现在可以在 UITextField 上设置keyboardAppearance。
[UITextField appearance].keyboardAppearance = UIKeyboardAppearanceDark;
但是,UITextView
不支持它。对于这门课,我会选择 jszumski 的解决方案
【讨论】:
我最近尝试过,但它不起作用(iOS 8.2)。至少,结合表格视图 是的!它可能会导致崩溃,但您仍然可以直接设置为 textviewtextView.keyboardAppearance = UIKeyboardAppearanceDark;
这些似乎都不适用于 UIKeyboardTypeNumberPad【参考方案2】:
UIAppearance
仅适用于特别标有宏 UI_APPEARANCE_SELECTOR
以兼容的方法,不幸的是 keyboardAppearance
不是其中之一。
获得所需内容的最佳方法是子类化UITextField
并在子类的init
和initWithFrame:
方法中设置keyboardAppearance = UIKeyboardAppearanceAlert;
。然后在应用程序中使用 UITextField
的任何地方专门使用您的课程。
【讨论】:
以上是关于如何为整个 App 设置 UIKeyboard-Style?的主要内容,如果未能解决你的问题,请参考以下文章
Android - 如何为整个应用程序设置自定义字体[重复]
如何为 Electron / Atom Shell App 设置应用程序图标
目标c如何为整个应用程序上的所有UIbuttons设置独家触摸