UITextView with clickable links but no text highlighting

I am working on the exact same problem and the best I could do was to instantly clear the selection as soon as it is made by adding the following to the UITextView's delegate:

- (void)textViewDidChangeSelection:(UITextView *)textView {
    if(!NSEqualRanges(textView.selectedRange, NSMakeRange(0, 0))) {
        textView.selectedRange = NSMakeRange(0, 0);
    }
}

Note the check to prevent recursion. This pretty much addresses the issue because only selection is disabled -- links will still work.

Another tangential issue is that the text view will still become first responder, which you can fix by setting your desired first responder after setting the selected range.

Note: the only visual oddity that remains is that press-and-hold brings up the magnifying glass.


I'm not sure if this works for your particular case, but I had a similar case where I needed the textview links to be clickable but did not want text selection to occur and I was using the textview to present data in a CollectionViewCell.

I simply had to override -canBecomeFirstResponder and return NO.

@interface MYTextView : UITextView
@end

@implementation MYTextView

- (BOOL)canBecomeFirstResponder {
    return NO;
}

@end