【发布时间】:2015-08-17 03:32:30
【问题描述】:
我正在尝试完成我的第一个 iOS 应用程序。
我的故事板布局是这样的:
Navigation Controller
'-> View Controller
'->Tab Bar Controller
|->Table View Controller
| '->View Controller
'->Table View Controller
'->View Controller
所有视图都通过推送(非模态)显示,因此需要后退导航。问题是当我从最后一个视图返回到表视图时,viewWillAppear 不会触发。所以我添加了导航控制器:
Navigation Controller
'-> View Controller
'->Tab Bar Controller
|->Navigation Controller
| '->Table View Controller
| '->View Controller*
'->Navigation Controller
'->Table View Controller
'->View Controller
这解决了 viewWillAppear 问题,但是标签栏仍然显示在底部,并且我在表格视图和最终视图中获得了一个额外的导航栏(见下文 - 对应于上面的 *)。按顶部的“
问题:
- 我在这里做错了什么???
- 什么时候视图应该有一个 NavigationController?是否可以为整个故事板提供一个,或者我应该拥有更多。
- 如果我将导航控制器放在标签栏之后,底部的标签栏会保留。我该如何摆脱它?
- 我应该避免使用标签栏吗?
更新:
这很奇怪。如果我重新创建故事板,我可以将其缩小到初始视图控制器/导航控制器对。不知道可能是什么问题,因为将它们换成新的就可以解决问题。
【问题讨论】:
-
你设置了第一个导航控制器的框架吗..?请出示您的代码 sn-p。
-
@SweetAngel 这一切都在故事板中。我浏览了代码以查看它之间是否有任何区别,但找不到。我认为问题可能是制作了 NavigationItem,然后嵌入到 NavigationController 中。
标签: ios uinavigationcontroller uitabbarcontroller