繁体   English   中英

如何使用标签栏项添加导航栏以查看控制器

[英]How to add Navigation bar to view controller with tab bar item

我有一个使用底部选项卡以及侧面菜单的应用程序,具有启动侧面菜单的按钮,我使用了典型的三行菜单按钮,并在其中放置了导航栏。 将栏放置在适当的位置,我无法将栏放在屏幕顶部。 我使用界面生成器构建了它,下面是截图。 问题是我如何单独拥有导航栏,而上方没有其他灰色栏?

在此处输入图片说明

您遇到的问题是由于您正在为视图控制器手动创建导航栏,而不是通过将视图控制器嵌入到标签栏控制器中来免费使用获得的导航栏,因此您看到两个酒吧。 另一个建议隐藏自动生成的导航栏的答案不是正确的解决方案。 相反,您应该将菜单按钮和视图标题放在自动生成的栏中,而不要手动创建自己的菜单(实际上,您几乎从不希望这样做)。

因此,您应该做的是将视图控制器的title属性设置为“ News”,并将视图控制器的leftBarButtonItem属性设置为您的汉堡菜单按钮( UIBarButtonItem的实例初始化为该图标的图像)。

例如(在您的视图控制器的viewDidLoad方法内部或适当的地方):

self.title = @"News";
self.navigationItem.leftBarButtonItem = [[UIBarButtonItem alloc] initWithImage:[UIImage imageNamed:@"menuIcon"] style:UIBarButtonItemStylePlain target:self action:@selector(showSideMenu)];

如果要删除最上面的导航栏,则需要使用self.navigationController.navigationBarHidden = YES; 对于用于UITabBarController选项卡的视图控制器:

// StoriesViewController.m
- (void)viewWillAppear:(BOOL)animated {
    [super viewWillAppear:animated];
    self.navigationController.navigationBarHidden = YES;
}   

暂无
暂无

声明:本站的技术帖子网页,遵循CC BY-SA 4.0协议,如果您需要转载,请注明本站网址或者原文地址。任何问题请咨询:yoyou2525@163.com.

 
粤ICP备18138465号  © 2020-2024 STACKOOM.COM