ios - 我如何在 UILabel/UITextView 中放置多点触摸,如 facebook 标题?

标签 ios objective-c facebook uilabel

我想让 UILabel 像 facebook 的标题一样。
我想做的是在 UILabel 或 UITextView 中进行多点触摸。我应该使用什么?
我怎样才能像这样http://tool.keepitreal.jp/screen.png ?
在这种情况下,如果您触摸,每个名称都会转到不同的页面。

    NSString* parts = @"this is test. you know?";

    NSError *error = nil;
    NSRegularExpression *regexp = [NSRegularExpression regularExpressionWithPattern:@"test" options:0 error:&error];
    if (error == nil) {
        NSArray *res = [regexp matchesInString:parts.string options:0 range:NSMakeRange(0, parts.length)];
        for (NSTextCheckingResult *match in res) {
            // change color
            [parts addAttribute:NSForegroundColorAttributeName
                            value:[UIColor redColor]
                          range:[match rangeAtIndex:0]];
        }
    }

最佳答案

只需在 UITextView 和事件处理程序方法中设置点击手势即可:

CGPoint location = [gestureRecognizer locationInView:theTextView];
UITextPosition *tapPos = [self.textViewBelowPopup closestPositionToPoint:location];
UITextRange *wr = [self.textViewBelowPopup.tokenizer rangeEnclosingPosition:tapPos withGranularity:UITextGranularityWord inDirection:UITextLayoutDirectionRight];
NSString *word = [self.textViewBelowPopup textInRange:wr];

您得到了“比较它”这个词并将其显示在适当的屏幕/页面上。

关于ios - 我如何在 UILabel/UITextView 中放置多点触摸,如 facebook 标题?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20512752/

相关文章:

objective-c - BOOL ivar 是否应该是允许另一个类设置它的指针?

Facebook 请求对话框 API : Request or Invitation

ios 8,Swift,IAP 收据验证

objective-c - Apple Maps Callout Accessory Control Taped 永不触发

ios - 查看堆栈或绘图

objective-c - Mac 中的叠加窗口

c# - Facebook.Client 包安装错误

jquery - Facebook 评论插件

ios - 用于保存一些实例的数组或字典?

ios - 创建元组数组以调用函数但无法获得返回