我有一个 View Controller ,我的键盘始终在屏幕上。正因为如此,我希望它的高度能小一点,而且它也是一个游戏应用程序,所以我希望让键盘看起来更有游戏感。
我应该如何处理这个问题?我可以在代码中自定义键盘这么多吗?我是否应该尝试制作自己的键盘,用20多个自定义按钮来组成键盘?
最佳答案
Garrett 是正确的,您无法自定义标准 iOS 键盘,但是有一种方法可以提供自定义 View 来代替它。
UITextField
有一个名为 inputView 的属性。
这将允许您提供所需的 View ,同时仍然保持使用文本字段成为和退出第一响应者的准确性。
既然您声明键盘始终在应用程序中打开,我假设您只创建/设置 UITextField 一次。
因此,在 viewDidLoad
中调出键盘,使其保留在屏幕上并设置其 inputView。
- (void)viewDidLoad
{
[super viewDidLoad];
// Do any additional setup after loading the view, typically from a nib.
UIView *customKeyboardView = [[[NSBundle mainBundle] loadNibNamed:@"CustomKeyboard" owner:nil options:nil] lastObject];
self.myTextField.inputView = customKeyboardView;
[self.myTextField becomeFirstResponder];
}
关于iphone - 是否可以从 UITextField 自定义键盘?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/17223355/