将点击事件传递给子视图 iOS
Pass tap event to the subview iOS
我有一个 TTTAttributed 标签,它可以自行检测 link 并且我有一个点击手势可以执行一些操作。
问题是当我有一个点击手势时它无法打开 link 它只能通过点击手势执行操作但是我希望如果文本是 link 输入,然后我的点击手势将点击转发到 TTTAttributed 标签的 link 检测。
非常感谢您的努力。提前致谢。
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
在此委托方法中处理您的事件。
检查您的点击手势识别器委托方法中的 [UITapGestureRecognizer state]
属性。根据 state
值,在完成自定义点击手势处理后,将事件传递给 TTTAttributedLabel
对象的以下触摸委托方法:
- touchesBegan:withEvent:
- touchesMoved:withEvent:
- touchesEnded:withEvent:
- touchesCancelled:withEvent:
这应该负责执行 TTTAttributedLabel
class 的默认行为。
我有一个 TTTAttributed 标签,它可以自行检测 link 并且我有一个点击手势可以执行一些操作。
问题是当我有一个点击手势时它无法打开 link 它只能通过点击手势执行操作但是我希望如果文本是 link 输入,然后我的点击手势将点击转发到 TTTAttributed 标签的 link 检测。
非常感谢您的努力。提前致谢。
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
在此委托方法中处理您的事件。
检查您的点击手势识别器委托方法中的 [UITapGestureRecognizer state]
属性。根据 state
值,在完成自定义点击手势处理后,将事件传递给 TTTAttributedLabel
对象的以下触摸委托方法:
- touchesBegan:withEvent:
- touchesMoved:withEvent:
- touchesEnded:withEvent:
- touchesCancelled:withEvent:
这应该负责执行 TTTAttributedLabel
class 的默认行为。