如何在对象中实现这种智能搜索

时间:2012-07-20 11:32:23

标签: iphone objective-c ios uisearchbar uisearchdisplaycontroller

在我的 iphone应用中,我有一个UISearchDisplaycontroller的搜索屏幕,针对每个 scopeBar 关键字,我们可以过滤搜索结果,但只使用此项 scopeBar 按钮我无法达到我的要求。

请参阅,我有一个成员列表,我需要根据州,国家,城市,名称搜索成员。我应该在一个栏中显示这些搜索类型(比如 scopBar )。

如果我们在搜索栏中输入'India',则选择 scopeBar 按钮(例如国家/地区)后,它应显示该国家/地区的所有成员。我怎样才能实现这种搜索?我尝试了很多搜索教程,但那些没有帮助我。请帮帮我。

感谢高级!

2 个答案:

答案 0 :(得分:1)

根据Apple的示例代码,我们可以在搜索期间使用2个数组,1个实际,第2个是过滤数组,如示例参考:

http://developer.apple.com/library/ios/#samplecode/TableSearch/Listings/MainViewController_m.html#//apple_ref/doc/uid/DTS40007848-MainViewController_m-DontLinkElementID_6

但是在你的情况下,我们需要3个数组,第三个数组将是过滤期间的本地数组(让我们调用scopedFilteredArray)。

  1. 按范围栏搜索所有对象:使用谓词(由scopedFilteredArray包含,来自实际数组)。

  2. 从scopedFilteredArray中搜索过滤的对象,并将它们保存在filteredArray中以供显示。

答案 1 :(得分:0)

有一个模态窗口可以选择你额外的过滤器参数(放置你想要的任何控件),并创建一个全局搜索nsmutabledictionary来存储你的参数。

我把它放在书本(书签)按钮上(它通过了苹果支票),方便查阅。