2010-01-21 5 views
3

Apple не обеспечивает обработку событий касания для UITextView. Проект, который я разрабатываю, включает заметки, которые могут быть доступны для чтения и редактирования, и я использую UITextView. Пожалуйста, помогите мне с этой проблемой - как я могу получить события касания для моего проекта?Получить события касания в UITextView

ответ

0

Решенный вопрос, используя собственную логику.

Во время чтения мы добавляем пользовательский вид над TextView и работать с

(void)touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event 

(void)touchesEnded:(NSSet *)touches withEvent:(UIEvent *)event 

Но когда мы находимся в режиме редактирования не представляется возможным. любое, как мое требование, только в читаемом режиме.

Спасибо за вашу поддержку, чтобы решить проблему.

4

В соответствии с документацией Apple вы можете установить делегат для UITextView и реализовать UITextViewDelegate.

http://developer.apple.com/iphone/library/documentation/UIKit/Reference/UITextViewDelegate_Protocol/Reference/UITextViewDelegate.html

В частности, вы можете определить, что UITextView тронула реализации textViewShouldBeginEditing.

- (BOOL)textViewShouldBeginEditing:(UITextView *)textView; 

Обязательно установите свойство delegate в UITextView, чтобы поймать событие.

+0

благодарность - (BOOL) textViewShouldBeginEditing: (UITextView *) textView; этот метод будет вызываться только тогда, когда [textView seteditable: yes]; но если я хочу изменить цвет некоторого текстового фона, я должен отключить редактирование. и, пожалуйста, дайте мне знать, как вставить изображение в определенное место в ui-textview. пожалуйста, если возможно, напишите какой-нибудь надежный код здесь Заранее спасибо – Madhu

+0

Вам не нужно отключать редактирование, чтобы изменить фон! Кроме того, вы всегда можете обернуть UITextView в пользовательский UIView и поймать события касания на этом (используя делегат при необходимости). Я делаю это, чтобы легко запоминать события касания на MKMapView. Это отличный подход и не будет компрометировать ваши методы UITextViewDelegate. –

0

Просто хотел добавить к ответу Кевина. UITextView наследуется от UIScrollView. Вы должны получать все события, объявленные в протоколе UIScrollViewDelegate для текстового представления.

я получил:

-(void)scrollViewDidScroll:(UIScrollView *)scrollView 

, когда я объявил свой класс в качестве делегата от UITextView.

1

Создайте собственное текстовое изображение и укажите события касания внутри пользовательского класса. то вы можете создавать методы в делетете этого пользовательского класса.

 Смежные вопросы

  • Нет связанных вопросов^_^