导航栏按钮在UITabBarController的子视图控制器中无响应

时间:2014-03-24 15:17:02

标签: ios uitabbarcontroller uinavigationbar

我通过调用navigationController.viewControllers = @[[self.storyboard instantiateViewControllerWithIdentifier:@"tabController"]];

来实例化我的UITabBarController

我的标签栏控制器有一个嵌入导航控制器的子视图。但是,当我触摸它们(导航栏中的按钮)时,条形按钮(item)没有响应。我已经尝试记录操作,但看起来按钮根本没有触发。

我唯一不同的是我实例化标签栏控制器的方式。我错过了什么吗?

我将故事板中的导航栏按钮连接到动作,以便成功连接。请注意,还有一个导航控制器指向下面未显示的UITabbarController。

enter image description here

enter image description here

3 个答案:

答案 0 :(得分:1)

不需要的行为可能是因为Apple HIG中不建议使用此流程(导航控制器到tabbar控制器)。可以在此处找到更多信息:Storyboard with NavigationController and TabController。我找到的解决方案是隐藏导航控制器上导航栏的导航栏(可以在界面构建器中完成),然后使其重新出现在标签栏链接到的新导航控制器中。令我感到困惑的是,我可以帮助任何有类似问题的人。

答案 1 :(得分:0)

您是否有任何具体原因:

navigationController.viewControllers = @[[self.storyboard instantiateViewControllerWithIdentifier:@"tabController"]];

您只需使用Storyboard将插座从UITableViewController拖到UINavigationController。

答案 2 :(得分:0)

我想你忘了添加navigationItem。在故事板中,向viewController添加导航项,并将栏按钮项移动到顶部显示的导航栏。