У меня есть пользовательская клавиатура, которая отображается на определенном UITextField, когда я устанавливаю inputField textField в свой KeyboardView. Клавиатура работает фантастически хорошо, но стало очевидно, что клавиатура будет "плавать", если пользователь ранее отстегнул встроенную клавиатуру Apple или даже разделил ее.
Я искал много часов, чтобы гарантировать, что моя пользовательская клавиатура не будет действовать так, и вместо этого останется состыкованной в нижней части экрана, независимо от того, отменил ли пользователь ранее встроенную клавиатуру Apple.
self.keyboardInputView = [[[KeyboardInputViewController_iPad alloc]
initWithNibName:@"KeyboardInputViewController_iPad"
bundle:[NSBundle mainBundle]] autorelease];
self.keyboardInputView.delegate = self;
self.keyboardInputView.keyboardTextField = myTextField;
myTextField.inputView = self.keyboardInputView.view;
[myTextField becomeFirstResponder];