NSAttributedString中的按钮操作或类似操作

时间:2014-02-10 15:52:13

标签: ios iphone nsattributedstring nsmutableattributedstring

有没有办法做类似于NSLinkAttribute的属性,但是我想在iOS上触发一个动作而不是打开一个url?

[attributedString addAttribute:NSLinkAttributeName value:@"http://www.google.com" range:range];

1 个答案:

答案 0 :(得分:3)

我找到了解决方案。

在UITextViewDelegate中,有一个方法:

textView:shouldInteractWithURL:inRange:

如果您返回NO,则可以截取链接的点击和长按。

- (BOOL)textView:(UITextView *)textView shouldInteractWithURL:(NSURL *)URL inRange:(NSRange)characterRange
{
    [self MAKE_YOUR_ACTION];
    return NO;
}

仅适用于iOS7。在旧版本中,我找到的唯一解决方案是@Anc Ainu在问题评论中提出的解决方案。