TTTAttributedLabel 可以检测链接,但不能正确按下

Posted

技术标签:

【中文标题】TTTAttributedLabel 可以检测链接,但不能正确按下【英文标题】:TTTAttributedLabel can detect links,but can't be pressed correctly 【发布时间】:2014-06-20 04:05:12 【问题描述】:

我正在使用 TTTAttributedLabel 来检测链接,这是我初始化标签的代码:

 - (TTTAttributedLabel *)getLinkLabelWithSize:(CGSize)size text:(NSString *)text
    TTTAttributedLabel *linkLabel;
    linkLabel = [[TTTAttributedLabel alloc] initWithFrame:CGRectMake(0, 0, size.width * 1.1, size.height)];
    linkLabel.font = [UIFont systemFontOfSize:14.0f];
    linkLabel.backgroundColor = [UIColor clearColor];
    linkLabel.lineBreakMode = UILineBreakModeWordWrap;
    linkLabel.numberOfLines = 0;
    linkLabel.enabledTextCheckingTypes = NSTextCheckingTypeLink;
    linkLabel.delegate = self;
    linkLabel.text = text;

    return linkLabel;

我将标签添加到另一个视图(xxxView)。

CGSize size = [str sizeWithFont:fon constrainedToSize:CGSizeMake(150, 40)]; [returnView addSubview:[self getLinkLabelWithSize:size text:str]];

这里是标签委托方法:

  #pragma mark - TTTAttributedLabelDelegate
  - (void)attributedLabel:(TTTAttributedLabel *)label
   didSelectLinkWithURL:(NSURL *)url 
    [[UIApplication sharedApplication] openURL:url];

问题是我必须多次按xxxView才能打开链接。我的代码有问题吗?

谁能帮帮我,拜托。

【问题讨论】:

你找到解决办法了吗? 【参考方案1】:

检查您的单元格内容视图是否有 TapGesture,如果有,请从文本消息单元格中删除 Gesture

【讨论】:

【参考方案2】:

刚遇到这个问题,当意识到新发布的版本中有修复时真的很绝望

【讨论】:

以上是关于TTTAttributedLabel 可以检测链接,但不能正确按下的主要内容,如果未能解决你的问题,请参考以下文章

TTTAttributedLabel 链接检测无法使用 Storyboard

TTTAttributedLabel 链接检测在 iOS8 中无法使用 swift

TTTAttributedLabel 和链接弹出框

TTTAttributedLabel链接检测在iOS8中使用swift无法正常工作

如何减少链接长度或为 TTTAttributedLabel 中检测到的链接设置固定长度

TTTAttributedLabel 的链接点击颜色