我想要做的是创建一个文本容器组件,它能够指示当触摸它时最接近的单词(即触摸点"后面"这个词).
首先,我创建了一个UILabel子类并覆盖了touchesEnded:withEvent:方法来确定触摸的CGPoint.我还编写了一个方法,使用sizeWithFont:forWidth:lineBreakMode:计算文本中每个单词的相应"框架"(CGRect).通过触摸的CGPoint和此帧,我可以确定实际触摸的是哪个单词.但是计算帧的方法仅适用于单行文本.
所以现在我需要知道文本的哪一部分在给定的行上(即文本是如何被分割的),这样我就可以计算每个单词的正确左边距和上边距.
知道我怎么能得到这个吗?或者也许有一个更简单的解决方案来实现这一目标?不幸的是,这篇文章不是很有帮助 ......