2011-02-09 5 views
3

У меня есть ситуация, когда клавиатура может быть открыта, а затем NSTimer открывает представление по текстовому виду. Есть ли все-таки, чтобы закрыть клавиатуру во всем мире, а не из метода просмотра resignFirstResponder? Причина, по которой я спрашиваю, заключается в том, что textView динамичен тем, что иногда он может быть, а не другими. Один из способов - дать ему TAG. Можно ли ссылаться на несколько элементов с помощью одного и того же тега?resignFirstResponder и закрыть клавиатуру из любого места?

Я думаю, что ответ - нет, но меня будут интересовать ваши мысли?

Благодаря

Steve

ответ

5

Метод endEditing: метод UIView должен делать трюк. Отправьте его в супервизор потенциально существующего UITextView, когда вы хотите отклонить клавиатуру.

+0

Я не знал об этом методе очень удобный !! – Skeep

+0

безупречное спасибо! – user609906

0

Вы можете попытаться отправить некоторый контроль сообщение becomeFirstResponder

0

Вы можете передать ссылку на UITextView в NSTimer ...

ORRRRR ... .

В поле зрения, которое появляется, вы можете сделать что-то вроде:

for(id view in self.superview.subviews){ 
    [(UIView *)view resignFirstResponder]; 
} 
7

Чтобы закрыть клавиатуру от везде, даже если вы не знаете, прямо, кто является firstResponder, использование:

[[[[UIApplication sharedApplication] delegate] window] endEditing:YES]; 
Смежные вопросы