Apple не обеспечивает обработку событий касания для UITextView
. Проект, который я разрабатываю, включает заметки, которые могут быть доступны для чтения и редактирования, и я использую UITextView
. Пожалуйста, помогите мне с этой проблемой - как я могу получить события касания для моего проекта?Получить события касания в UITextView
ответ
Решенный вопрос, используя собственную логику.
Во время чтения мы добавляем пользовательский вид над TextView и работать с
(void)touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event
(void)touchesEnded:(NSSet *)touches withEvent:(UIEvent *)event
Но когда мы находимся в режиме редактирования не представляется возможным. любое, как мое требование, только в читаемом режиме.
Спасибо за вашу поддержку, чтобы решить проблему.
В соответствии с документацией Apple вы можете установить делегат для UITextView и реализовать UITextViewDelegate.
В частности, вы можете определить, что UITextView тронула реализации textViewShouldBeginEditing.
- (BOOL)textViewShouldBeginEditing:(UITextView *)textView;
Обязательно установите свойство delegate в UITextView, чтобы поймать событие.
Просто хотел добавить к ответу Кевина. UITextView наследуется от UIScrollView. Вы должны получать все события, объявленные в протоколе UIScrollViewDelegate для текстового представления.
я получил:
-(void)scrollViewDidScroll:(UIScrollView *)scrollView
, когда я объявил свой класс в качестве делегата от UITextView.
Создайте собственное текстовое изображение и укажите события касания внутри пользовательского класса. то вы можете создавать методы в делетете этого пользовательского класса.
благодарность - (BOOL) textViewShouldBeginEditing: (UITextView *) textView; этот метод будет вызываться только тогда, когда [textView seteditable: yes]; но если я хочу изменить цвет некоторого текстового фона, я должен отключить редактирование. и, пожалуйста, дайте мне знать, как вставить изображение в определенное место в ui-textview. пожалуйста, если возможно, напишите какой-нибудь надежный код здесь Заранее спасибо – Madhu
Вам не нужно отключать редактирование, чтобы изменить фон! Кроме того, вы всегда можете обернуть UITextView в пользовательский UIView и поймать события касания на этом (используя делегат при необходимости). Я делаю это, чтобы легко запоминать события касания на MKMapView. Это отличный подход и не будет компрометировать ваши методы UITextViewDelegate. –