2009-07-21 131 views
1

我正在研究一个具有填充表视图的UISearchBar的iPhone应用程序。我在搜索中有很多选项可以很容易地融入'范围'功能。不过,我真的需要有两组按钮。一个组是确定搜索类型的“范围”,另一个组指示返回结果的排序顺序。据我所知,您只能使用正常功能一次选择一个“范围”项目。如何在UISearchBar中多选择范围?

我只加载一小部分可能的结果与每个查询(速度),所以我不能单独使用表视图排序。它需要每次传递给我的搜索查询,因此我需要用户能够选择搜索类型和搜索顺序。

现在,我只有两个不同的UISegmentedControl在我的UISearchBar下面,而且我一切都是手工完成的。这工作。但是,即使我将背景变成灰色,它也没有看起来是搜索栏的一部分(例如mail.app上的范围)。

任何想法?我对SDK很新,所以很可能我错过了一些东西。我只是在手动编写分段控件后才发现范围功能!

+0

您可以在创建多范围控件时共享您的代码吗?我也试图做这样的事情。 – 2011-10-10 06:13:35

回答

1

我不确定这是否有帮助,但您可以通过下面的代码访问与搜索栏一起使用的分段控件。也许你可以调整或更换一些东西?

// Find scope segmented control 
for (UIView *v in searchBar.subviews) { 
    if ([v isMemberOfClass:[UISegmentedControl class]]) { 

     // You've got the segmented control!   
     UISegmentedControl *scope = (UISegmentedControl *)v; 

     // Do your thing here... 

    } 
} 
+0

不幸的是,这并不适用于iOS7 – Shmidt 2014-02-08 09:43:44