我有一个TTTAttributed标签,可以自己检测链接,我有一个轻击手势,可以执行某些操作。
问题是,当我有一个轻击手势,然后它无法打开链接它只能通过点击手势执行操作但我想如果文本是链接类型然后我的点击手势转发水龙头到TTTAttributed标签的链接检测。
您的努力真的很受欢迎。提前谢谢。
答案 0 :(得分:1)
label.enabledTextCheckingTypes = NSTextCheckingTypeLink; // Automatically detect links when the label text is subsequently changed
label.delegate = self; // Delegate methods are called when the user taps on a link (see `TTTAttributedLabelDelegate` protocol)
label.text = @"Google it! (https://www.google.co.in/)"; // Repository URL will be automatically detected and linked
NSRange range = [label.text rangeOfString:@"Google"];
[label addLinkToURL:[NSURL URLWithString:@"http://google.com/"] withRange:range]; // Embedding a custom link in a substring
设置TTTAttributed标签的委托,当用户点击标签时,将调用其委托方法。
(void)attributedLabel:(TTTAttributedLabel *)label didSelectLinkWithURL:(NSURL *)url
使用此委托方法处理您的事件。
答案 1 :(得分:1)
在您的点击手势识别器委托方法中检查[UITapGestureRecognizer state]
属性。根据{{1}}值,在您完成自定义点击手势处理后,将事件传递给state
对象的以下触摸委托方法:
TTTAttributedLabel
这应该注意执行- touchesBegan:withEvent:
- touchesMoved:withEvent:
- touchesEnded:withEvent:
- touchesCancelled:withEvent:
类的默认行为。