0

我有一个关于CTLineGetStringIndexForPosition核心文本的问题。

我有这样的文字:

Question: Hello, how are you today?
Answer: I am fine thank you
Question: great day isn't it?
...

在上面的文字中,我为每个“问题:”字设置了属性,以使其可点击。我将所有这些文本放在一个UITableview单元格上。我有很多类似的单元格有问题和答案。当我触摸其中一个单元格上的“问题:”字时,我得到的索引是正确的。我向下滚动UITableview,然后我有另一个像以前一样的文本。当我点击“问题:”时,索引不正确。

这就是我实现索引的方式。

index = CTLineGetStringIndexForPosition(line,CGPointMake(lineOrigins[i].x + pnt.x, pnt.y));

任何帮助表示赞赏!

4

1 回答 1

0

你没有解释pnt从哪里来,但它可能是不正确的。CTLineGetStringIndexForPosition相对于文本空间中每一行的原点(通常与您可能期望的相反)。有关如何处理此问题的示例,请参阅使用 CoreText 和触摸创建可点击操作。

于 2013-01-11T02:46:42.993 回答