问题描述
我在表格中的UITableViewCell中有一个UITextView。关闭UITextView的editable,这允许我将dataDetectorTypes设置为UIDataDetectorTypeAll,这正是我想要的。该应用程序现在检测用户何时触摸UITextView中的链接,并执行相应的操作。
I have a UITextView inside a UITableViewCell in a table. "editable" for the UITextView is turned off, which allows me to set dataDetectorTypes to UIDataDetectorTypeAll, which is exactly what I want. The app now detects when the user touches a link in the UITextView, and does the appropriate thing.
当用户触摸部分UITextView时会出现问题没有链接。我希望调用UITableView委托中的didSelectRowAtIndexPath。但它不是,因为即使没有检测到链接,UITextView也会捕获触摸。
The problem arises when the user touches on part of the UITextView where there is no link. I want the didSelectRowAtIndexPath in the UITableView delegate to be called. But it isn't, because the UITextView is trapping the touch, even when no link is detected.
我的第一个猜测是将UITextView上的userInteractionEnabled变为NO。这意味着将调用didSelectRowAtIndexPath,但是UITextView无法检测到链接。这是一个问题22。
My first guess was to turn userInteractionEnabled on the UITextView to NO. This means that didSelectRowAtIndexPath will get called, but then the UITextView can't detect links. It's a catch-22.
关于如何解决这个问题的想法?
Any ideas on how to fix this?
感谢您的帮助。
推荐答案
也许你可以尝试通过触摸响应器链。
Maybe you could try passing the touch up the responder chain.
- (void)touchesBegan:(NSSet *)touches withEvent:(UIEvent *)event {
[super touchesBegan:touches withEvent:event];
}
这篇关于在UITableViewCell中的UITextView上启用dataDetectorTypes的文章就介绍到这了,希望我们推荐的答案对大家有所帮助,也希望大家多多支持!