Запретить отображение клавиатуры с текстовым полем в качестве первого респондента - PullRequest
0 голосов
/ 02 февраля 2012

Я пишу новое сообщение, потому что у меня проблема с тем, что я не могу найти ответ в Интернете. Я работаю с Bluetooth-баркодером с чистым видом без видимых текстовых полей. Чтобы поймать информацию о штрихкодере, я использую скрытое текстовое поле и работает нормально. Проблема в том, что когда Barcoder отключается, появляется клавиатура, потому что поле является первым респондентом. Я не хочу оставлять это поле, но не хочу, чтобы появлялась клавиатура.

У меня есть функция, которая ловит, когда появится клавиатура:

[[NSNotificationCenter defaultCenter] addObserver:self selector:@selector (keyboardWillShow:) name: UIKeyboardWillShowNotification object:nil];

Я хочу остановить событие клавиатуры или, если это невозможно, скрыть его при появлении. Есть идеи по этому поводу? Любая помощь будет очень полезна ...

Спасибо, ребята!

Ответы [ 2 ]

3 голосов
/ 02 февраля 2012

Ответ Дилипа может сработать для вас.Если это не так, есть несколько альтернатив:

1) установите для свойства textField.enabled значение NO.

2) Подкласс UITextField и верните nil для inputView:

@interface MyTextField: UITextField

@end

@implementation MyTextField

- (void)inputView
{
    return nil;
}

@end

Если вы используете свой пользовательский класс текстового поля вместо обычного UITextField, он работает так же, за исключением того, что вы сказали использовать nil для его клавиатуры вместо UIKeyboardView (который используется по умолчанию).

1 голос
/ 02 февраля 2012

Я не могу правильно понять ваш вопрос, но все же у меня есть для вас предложение.

Если вы устанавливаете текст в UITextField программно, вы можете установить для свойства userInteractionEnabled значение No.

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...