Как остановить мою пользовательскую клавиатуру от "плавающего" или отстыковать на iPad
У меня есть пользовательская клавиатура, которая отображается на определенном 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];
Ответы
Ответ 1
Вы не должны этого делать, и нет способа сделать это.
Вы не можете переопределять пользовательские настройки с помощью специальной клавиатуры, особенно не те, которые могут улучшить доступность пользовательского интерфейса.
В учебнике вы можете включить предупреждение о том, что ваша клавиатура лучше всего работает при блокировке донизу, но вы должны задать себе вопрос: хорошо ли это UX или нет. Я бы сказал, что последний.