iOS: KILabel 没有响应触摸事件

iOS: KILabel not responding to touch events

我正在尝试使用 KILabel 子类来处理项目中的主题标签和提及之类的事情。我已经正确渲染了标签,它似乎对触摸有反应,但我无法让它成功注册一个点击处理程序。这是 viewDidLoad 中的代码:

    // Attach a block to be called when the user taps a user handle
    _testLabel.userHandleLinkTapHandler = ^(KILabel *label, NSString *string, NSRange range) {
        NSLog(@"User tapped %@", string);
    };

    // Attach a block to be called when the user taps a hashtag
    _testLabel.hashtagLinkTapHandler = ^(KILabel *label, NSString *string, NSRange range) {
        NSLog(@"Hashtag tapped %@", string);
    };

    // Attach a block to be called when the user taps a URL
    _testLabel.urlLinkTapHandler = ^(KILabel *label, NSString *string, NSRange range) {
        NSLog(@"URL tapped %@", string);
    };

这是它在界面生成器中的样子:

无论出于何种原因,它都无法识别任何触摸事件。我可以实际看到显示 link 被点击的界面,但我在事件方面一无所知。有人可以帮我从这里出去吗?我知道它可能很简单但不清楚;尽管文档不是那么广泛,但我尽量仔细阅读文档。

提前致谢,弄清楚这一点将是一件大事。

找到答案了。万一有人发现这个;如果您有适当的点击手势识别器,则与 KILabel 的交互效果不佳。如果有,则需要设置 [myGestureRecognizer setCancelsTouchesInView:NO];。这将允许您与标签进行交互。