我使用CoreText
来布局自定义视图。想知道我使用CoreText
点击事件/手势的单词。
我在drawRect:
CGContextSetFillColorWithColor(context, [UIColor whiteColor].CGColor);
CGContextSelectFont(context, "Helvetica-Bold", FONTSIZE, kCGEncodingMacRoman);
//setSpan
CGContextSetTextPosition(context, 0, (200+offset) - (i*25));
CGContextShowText(context,[[dispLineArray objectAtIndex:i] UTF8String], strlen([[dispLineArray objectAtIndex:i] UTF8String]));
答案 0 :(得分:0)
在这个已回答的问题中,您可以找到有关CoreText和触摸手势的信息:
Using CoreText and touches to create a clickable action(未经我测试!)
在示例中,您可以看到如何从触摸位置获取字符串字符索引。在此之后,您可以使用不同的方法提取单词,例如在两个NSString中按字符位置拆分NSString,然后用空格字符拆分两者。现在,我们有两个NSArray。在此之后,将两个NSArray的最后一个元素和第一个元素合并为一个NSString。 你有这个词。
这是一个基本的,肯定有更好的方法来使用正则表达式或其他技术来做到这一点。
答案 1 :(得分:0)
如果显示视图是uiview。您可以使用视图的gestureRecognizer进行操作。 如果显示视图是自定义GTFrameRef,请使用uiresponse触摸功能。