如何在ios的tabbar控制器中添加搜索栏?

时间:2015-09-14 10:31:28

标签: ios objective-c uisearchbar tabbarcontroller

我正在开发一个项目,我必须在顶部的标签栏控制器上使用搜索栏。我尝试了很多代码,但没有工作,我正在分享我的代码。请帮我解决这个问题。

UISearchBar *search = [[UISearchBar alloc] init];
    search.frame = CGRectMake(5 ,5, 300,45);
    search.delegate = self;
    search.showsBookmarkButton = NO;
    search.placeholder = @"Search/Select a Creative Service";
    search.barTintColor = [UIColor blackColor];

3 个答案:

答案 0 :(得分:1)

将搜索栏设置为标题视图:

self.navigationItem.titleView = search;

答案 1 :(得分:0)

创建一个baseviewcontroller并在其中添加UISearchBar。之后,您可以从该baseviewcontroller继承每个选项卡的ViewController。因此,在UITabBarController的每个选项卡中,您将获得该UISearchBar。

您为创建UISearchBar而编写的代码是正确的。只需将其添加到baseviewcontroller的视图中即可。另外,请确保正确设置框架。

答案 2 :(得分:0)

我一直在努力解决这个问题,直到我尝试了一些事情,事实证明这很简单!

你需要做的就是在一个UIViewController中添加UISearchBar和一个Container View,然后从那个Container View中将segue设置为你的UITabBarController,你就去了!所有选项卡和解决方案中的一个搜索栏也有助于将搜索功能的逻辑与选项卡功能分开,因为您不会被迫在所有选项卡中实现搜索视图。

在这里,我创建了一个带有1个UIView的视图控制器,其中包含一个搜索栏和一个帐户图标,还包含一个容器视图(蓝色部分),它将支持TabBarController