Получить события касания в UITextView
-
22-09-2019 - |
Вопрос
Apple не обеспечивает обработку событий касания для UITextView
.Проект, который я разрабатываю, включает заметки, которые можно читать и редактировать, и я использую UITextView
.Пожалуйста, помогите мне с этой проблемой: как мне получить сенсорные события для моего проекта?
Решение 4
Я решил проблему, используя свою собственную логику.
Во время чтения мы добавляем Custom View
над textview
и работая с этими методами:
(void)touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event
(void)touchesEnded:(NSSet *)touches withEvent:(UIEvent *)event
Но когда мы находимся в режиме редактирования, это уже невозможно.В любом случае мое требование только в читаемом режиме.
Спасибо за вашу поддержку в решении проблемы.
Другие советы
Согласно документации Apple, вы можете установить делегат для UITextView и реализовать UITextViewDelegate.
В частности, вы можете определить, что UITextView был затронут, реализовав textViewShouldBeginEditing.
- (BOOL)textViewShouldBeginEditing:(UITextView *)textView;
Обязательно установите свойство делегата в UITextView, чтобы перехватить событие.
Создайте собственное текстовое представление и предоставьте события касания внутри пользовательского класса.затем вы можете создавать методы в делегате этого пользовательского класса.
Просто хотел добавить к ответу Кевина.UITextView наследует от UIScrollView.Вы должны получать все события, объявленные в протоколе UIScrollViewDelegate для текстового представления.
Я получил:
-(void)scrollViewDidScroll:(UIScrollView *)scrollView
когда я объявил свой класс делегатом UITextView.