Question

Apple does not provide touch event handling for UITextView. The project I'm developing includes notes that can be readable and editable, and I am using a UITextView. Please help me with this problem -- how can I get touch events for my project?

Was it helpful?

Solution 4

I resolved the issue by using my own logic.

While reading we are adding a Custom View over the textview and working with those methods:

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

But when we are in the editing mode it is not possible anymore. Anyhow my requirement is only in readable mode.

Thanks for all your support to resolve the issue.

OTHER TIPS

According to the Apple documentation, you may set a delegate for UITextView and implement the UITextViewDelegate.

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

Specifically, you can determine that a UITextView was touched by implementing textViewShouldBeginEditing.

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

Be sure to set the delegate property on the UITextView in order to catch the event.

Create custom textview and provide touch events inside the custom class. then you can create methods in delegate of that custom class.

Just wanted to add to Kevin's answer. UITextView inherits from UIScrollView. You should be getting all the events declared in UIScrollViewDelegate protocol for the text view.

I got:

-(void)scrollViewDidScroll:(UIScrollView *)scrollView

when I declared my class as the delegate of UITextView.

Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top