我有一个NSTextAttachment
,其中一个图像位于UILabel
中,我想在单击此附件时执行自定义行为。UITextViewDelegate
提供了一种方便的方法
textView:shouldInteractWithTextAttachment:inRange:
但是仅当我使用
UITextView
时才可以使用。如果我使用
UILabel
有什么解决方案吗?谢谢!
最佳答案
文本附件成为模型的一部分,并被视为字符,因此请尝试在附件范围内添加链接。
像这样:
NSTextAttachment *attachment = [[NSTextAttachment alloc] initWithData:nil ofType:nil];
attachment.image = [UIImage imageNamed:@"myImage"];
NSAttributedString *imageString = [NSAttributedString attributedStringWithAttachment:attachment];
NSMutableAttributedString *mutableImageString = [imageString mutableCopy];
[mutableImageString addAttribute:NSLinkAttributeName value:@"http://stackoverflow.com" range:NSMakeRange(0, mutableImageString.length)];