我有一个搜索栏和搜索栏控制器,它在 UItableview 中显示解析的 xml,并在搜索栏字段中更改任何字符。问题在于速度。
目前,在输入搜索栏文本时不断获取 xml 文件并对其进行解析需要一段时间。
有没有办法优化这个?就像在输入单词条目后搜索和解析搜索栏文本后延迟加载表格视图一样。
谢谢
我会考虑使用NSOperation。
将模型数据保存在与表数据源不同的位置。@property (retain, nonatomic) NSArray *data
我通常对模型数据和@property (retain, nonatomic) NSMutableArray *tableData
表中当前显示的数据使用类似的东西。中-searchBar:textDidChange:
,取消之前的搜索操作,将tableData清空,开始新的搜索操作。该操作将执行搜索并将结果添加到 tableData。
为了获得更好的用户体验,而不是使用每个新字符将 tableData 重置为空。在开始搜索操作之前,您可以简单地删除与新搜索字符串不匹配的项目。当然,您需要确保该操作不会将项目添加到已经在其中的 tableData 中。