如何在Tab栏的导航栏中添加文本字段和图像?

时间:2016-10-13 10:47:06

标签: ios objective-c tabbar

我想在标签栏控制器的导航栏上添加文本字段和搜索图标。请检查附加图片。

enter image description here

注意:这是主屏幕,如果用户点击任何菜单项,它将转到detailvc,所以我在homevc添加一个导航控制器并将其隐藏。< / p>

我想在tabbar的导航栏中显示搜索图标 text-field 。我怎么能这样做?

5 个答案:

答案 0 :(得分:0)

导航标题视图

中使用左视图设置文本字段

navigationItem.titleView = UITextField()

答案 1 :(得分:0)

对导航栏进行子类化

@interface SearchNavigationBar : UINavigationBar

-(void)layoutSubviews
{
    [super layoutSubviews];
     UIBarButtonItem *buttonItem = [[UIBarButtonItem alloc] initWithImage:[UIImage imageNamed:@"searchImage"] style:UIBarButtonItemStylePlain target:self action:@selector(searchPrompt:)];
     self.topItem.rightBarButtonItem = buttonItem;
}

将其添加为导航控制器的类

enter image description here

以这种方式获取对象

UINavigationController *navBar = [[UINavigationController alloc] initWithNavigationBarClass:[SwitchAssessmentNavigationBar class] toolbarClass:nil];

然后您可以在工具栏上调用自定义方法,例如在主页中触发事件的代理进行更改

答案 2 :(得分:0)

  

navigationBar中心的搜索栏:

self.navigationItem.titleView = self.searchBarTop;
  

navigationBar左侧/右侧的searchBar:

UIBarButtonItem *searchBarItem = [[UIBarButtonItem alloc] initWithCustomView:searchBar];
self.navigationItem.rightBarButtonItem = searchBarItem;

答案 3 :(得分:0)

创建一个UIView自定义类,它将保留您的自定义搜索栏。 然后将该视图的实例添加到navigationController的视图中。

[self.navigationController.view addSubview:yourCustomView];

答案 4 :(得分:0)

我必须添加自己的自定义类UItabbar-Contrller