0

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

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

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

我怎样才能做到这一点?

4

1 回答 1

0

您必须以粗体显示它吗?

如果否,答案如下

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

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

如果您需要将单词加粗,那么您可以使用诸如“OHAttributedLabel”之类的库阅读更多https://github.com/AliSoftware/OHAttributedLabel

于 2012-05-22T12:32:38.997 回答