Как остановить появление keyBoard при событии щелчка на UITextview?

В моем приложении для IPad я использую TextView только для отображения текста. Поскольку мне нужно отображать текст большего размера, поэтому я использую UITextview из-за его свойства прокрутки вместо использования UILabel. В моем приложении мне не нужно редактировать текст в UITextview, но проблема для меня в том, что когда я нажимаю на Textview для прокрутки клавиатуры, появляется его скрытие моего текстового представления, поэтому я хочу, чтобы моя клавиатура никогда не отображалась при событии щелчка. Я делаю поиск но не нашли подходящего решения.Любая помощь будет приложена.Спасибо


person jamil    schedule 19.07.2012    source источник


Ответы (2)


НОВЫЙ ОТВЕТ (предыдущий не работал должным образом)

Хорошо, так как это не работает, потому что оно также отключает прокрутку, вы должны попытаться:

Реализуйте протокол UITextFieldDelegate. В вашем контроллере представления добавьте текст

@interface YourViewController () <UITextViewDelegate>

В viewDidLoad установите себя в качестве делегата:

yourUITextView.delegate = self;

Реализуйте метод делегата ниже:

- (BOOL)textViewShouldBeginEditing:(UITextView *)textView
{ 
   return NO; 
}

Когда текстовое представление собирается редактировать текст, этот метод будет вызван автоматически. Он возвращает "нет", поэтому редактирование не начинается.

Очень важно отменить изменения, внесенные в предыдущие ответы: Не устанавливайте для редактируемого поля значение НЕТ

Я попробовал, и он работает. Надеюсь, это поможет!

СТАРЫЙ ОТВЕТ

при объявлении переменной или в методе viewdidload установите для свойства editable значение NO:

yourUITextView.editable = NO;

or

[yourUITextView setEditable:NO]

Это должно предотвратить появление клавиатуры.

person The dude    schedule 19.07.2012
comment
используя это, я не могу прокручивать - person jamil; 19.07.2012
comment
@ Альберт. Я отредактировал свой ответ другим способом. Он должен закрыть клавиатуру, но по-прежнему разрешить прокрутку. - person The dude; 19.07.2012

Перейдите в файл .XIB, и вы можете снять флажок редактируемого или программного

textView.editable = NO;

person AAV    schedule 19.07.2012
comment
используя это, я не могу прокручивать. - person jamil; 19.07.2012