ios - 向 NSAttributedString 添加常规操作?

标签 ios uilabel nsattributedstring

我只是想添加一个 objetive-c 操作,以便使用 NSAttributedString 在我的 UILabel 中的某个范围内点击时调用。

但是我不知道该怎么做。我不想打开一个 URL,我只想调用一个方法。

谢谢

最佳答案

您可以使用 NSLinkAttributeName 本身来实现这一点。使用如下所示的属性字符串并将其设置为 UITextView 的文本。

 NSMutableAttributedString *attributedString = [[NSMutableAttributedString alloc]initWithString:termsString];
        [attributedString addAttribute:NSLinkAttributeName value:url range:range];
[myTextView setAttributedText:attributedString];

然后覆盖 UITextView 委托(delegate)方法:

-(BOOL)textView:(UITextView *)textView shouldInteractWithURL:(NSURL *)URL inRange:(NSRange)characterRange{

// Call your method here.
return YES;
}

不要忘记设置 textView 的委托(delegate)!

关于ios - 向 NSAttributedString 添加常规操作?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27908596/

相关文章:

ios - 按名称获取实体并使用 CoreData 创建关系

iphone - 如何计算包含表情符号iphone的文本高度

ios - 打开设置为 UILabel 作为属性字符串的文本上的链接。从 json 响应中读取属性字符串

swift - 在实例化 View Controller 中使用 NSMutableAttributedString 引用 UIButton 时出现问题

php - 一个 SQL 行到一个 UILabel

ios - NSAttributedString 包装问题

ios - UIKeyboard 将通过交互式键盘关闭更改框架,而不是连续调用

objective-c - sqlite 程序在模拟器上运行,而不是在设备上运行

objective-c - UIAlertView 分配中缺少哨兵

ios - 如何更改 UILabel 中的字母间距?