如何在 UITableView 中显示搜索词的搜索结果及其句子
Posted
技术标签:
【中文标题】如何在 UITableView 中显示搜索词的搜索结果及其句子【英文标题】:How to display the search results of a search term with its sentence in UITableView 【发布时间】:2012-05-22 12:26:37 【问题描述】:我在核心数据中有大量文本,并在我的 tableView 中使用了一个搜索栏(显示文本),并使用 fetchedResultsController 和 NSpredicate 在实体中实现了搜索。
因此 UITableView 会显示包含搜索词的文本结果。但我想显示包含搜索词或搜索词之前或之后2-3个词的句子。
例如,如果我有这样的文字:“我对飞行模型飞机有广泛的了解,并且喜欢 CoreData”并搜索“飞行”,我只想显示“......飞行的广泛知识强> 模型飞机...”
我该怎么做?
【问题讨论】:
【参考方案1】:你必须用粗体显示吗?
如果没有,答案如下
首先获取已搜索文本的范围,例如,假设您在句子“this is the word am search”中搜索“word” 搜索“word”的范围为 12,并将其保存在变量中 然后获取范围为 12 - 10(范围 [2,10])的 a 子字符串并将其保存在另一个变量中 最后在范围 [12+4,10] 的单词后面得到一个 10 个字符的 sbustring 并将其保存到另一个变量中现在连接所有这些变量(之前+“”+“单词”+“”+之后)并显示它
如果您需要将单词加粗,则可以使用“OHAttributedLabel”之类的库阅读更多https://github.com/AliSoftware/OHAttributedLabel
【讨论】:
是否有任何 API 可以执行此任务? 你说的api是什么意思?但不,它主要是正常的目标 c 代码,我过去做过类似的事情,我不记得我使用了任何特殊的 api only rangeOfString以上是关于如何在 UITableView 中显示搜索词的搜索结果及其句子的主要内容,如果未能解决你的问题,请参考以下文章
视图控制器中的搜索栏和搜索显示控制器,其中包含 UITableView