任何人都知道如何在IOS7中的评论文本中使#KEY和@NAME可以点击(例如,与Instagram相同的方式)?我正在尝试使用NSMutableAttributedString,但我不确定如何检测点击事件,在下图中单击@Username应该将用户带到用户的配置文件

看看UITextViewDelegate协议,iOS7中有一种新方法:textView:shouldInteractWithURL:inRange:.
您没有共享任何代码,但可以安全地假设您有attributedString一个range代表您变成蓝色的区域.我还假设你可以将用户名提取到一个名为的变量中username.
使用这三条信息,您可以为该范围添加链接属性.
[attributedString addAttribute:NSLinkAttributeName
value:[@"username://" stringByAppendingString:username]
range:range];
Run Code Online (Sandbox Code Playgroud)
在你的代表中,你可以这样做:
- (BOOL)textView:(UITextView *)textView shouldInteractWithURL:(NSURL *)URL inRange:(NSRange)characterRange
{
if ([URL.scheme isEqualToString:@"username"]) {
[self doSomethingWithUserName:URL.host];
return NO;
}
return YES;
}
Run Code Online (Sandbox Code Playgroud)
我相信他们在WWDC 2013的介绍文本工具包会议中进行了演示.
| 归档时间: |
|
| 查看次数: |
1424 次 |
| 最近记录: |