У меня есть пользовательская клавиатура, которую я хочу показать, когда пользователь касается UITextField. Но в то же время я хочу показать курсор в текстовом поле. Если, если возврат НЕ для canBecomeFirstResponder, это не показывает клавиатуру по умолчанию, но не показывает курсор также.
Кто-то может выручить меня?
Спасибо.
Я не уверен в сути, но почему бы просто не использовать UILabel с тем же содержимым текстового поля и оформлением, чтобы он выглядел как ваше текстовое поле с курсором в нем. Замените его на UITextField, когда хотите ввести.
Зарегистрируйтесь как наблюдатель уведомлений с клавиатуры (например, в контроллере представления, где вы хотите скрыть клавиатуру): -
[[NSNotificationCenter defaultCenter] addObserver:self selector:@selector(hideKeyboard:) name:UIKeyboardWillShowNotification object:nil];
Вставьте hideKeyboard: function: -
-(void)hideKeyboard:(NSNotification *)notification {
for (UIWindow *keyboardWindow in [[UIApplication sharedApplication] windows]) {
for (UIView *keyboard in [keyboardWindow subviews]) {
if([[keyboard description] hasPrefix:@"<UIKeyboard"] == YES) {
keyboard.alpha = 0;
}
}
}
}
(Спасибо пользователю luvieere в этом сообщении за то, что он показал мне, как получить клавиатуру)