我添加了一个带有一些文本的标签和指向 ScrollView 的链接,当您点击这些链接(在标签中)时,将调用一个委托方法,显示一个弹出框并显示一些相关信息。
但问题从这里开始,我希望当您点击链接以外的其他任何地方时,弹出框消失。
如果我将 UITapGestureRecognizer 添加到 ScrollView,则不会调用链接的委托方法。
我应该怎么做才能标记处理链接上的点击,而 ScrollView 处理其他点击?
我确实喜欢这样:
UITapGestureRecognizer *tap = [[UITapGestureRecognizer alloc] initWithTarget:self action:@selector(tapped)];
[self.scrollView addGestureRecognizer:tap];
- (void)tapped
{
if ([self.storyText.delegate respondsToSelector:@selector(attributedLabel:shouldFollowLink:)])
[self.storyText.delegate performSelector:@selector(attributedLabel:shouldFollowLink:) withObject:self.storyText];
}
在点击方法中,我检查是否点击链接,应该调用委托,但委托不会调用。我错过了什么吗?