如何在UITableView中显示搜索词的搜索结果及其句子

时间:2012-05-22 12:26:38

标签: search core-data nsfetchedresultscontroller

我在核心数据中有大量文本,并在tableView(显示文本)中使用了搜索栏,并在带有fetchedResultsController和NSpredicate的实体中实现了搜索。

因此UITableView会显示包含搜索字词的文本结果。但我想在搜索词之前或之后显示包含搜索词或2-3个词的句子。

例如,如果我有一个文字,如:“我对飞行模型飞机有广泛的了解,并且喜欢CoreData”并搜索“飞行”,我只想显示“... 飞行的广泛知识模型飞机......“

我该怎么做?

1 个答案:

答案 0 :(得分:0)

你必须用粗体显示它吗?

如果不是,答案如下:

  • 首先获取已搜索文本的范围,例如,假设您在句子“这是搜索的单词”中搜索“单词” 搜索12的“word”范围,并将其保存在变量中 然后得到一个范围为12 - 10(范围[2,10])的子字符串,并将其保存在另一个变量中 最后在范围[12 + 4,10]的单词之后获得10个字符的sbustring并将其保存到另一个变量中

现在连接所有这些变量(在+“”+“word”+“”+之后)并显示它

如果您需要将单词设为粗体,那么您可以使用像“OHAttributedLabel”这样的库来阅读更多https://github.com/AliSoftware/OHAttributedLabel