【发布时间】:2016-07-19 19:45:56
【问题描述】:
我以模态方式提供UITableView 以提供对某些应用程序设置的访问权限。当模态视图(根视图控制器)出现时,它有一个我期望的导航栏。 However, when one of the options is selected and the next 'UITableView` is popped to the top of the stack, there's no navigation bar.
这是UITableViews 中的一个孩子的样子:
据我所知,两个子视图应该有导航栏,而我不必做任何事情,因为它们嵌入在 UINavigationController 中。
我尝试将导航栏拖到视图中,但 IB 只会让我将它们放在 UITableView 中,如果我这样做,它们确实会出现,但它们在视图中也太高并跑到状态栏,我可以对它们设置任何布局约束来解决这个问题。
我没有走运地搜索了 Apple 文档,并在 SO 上找到了许多非常非常古老且在 Objective-C 中的线程。
我可以让这些视图像我期望的那样一起工作,还是我必须从头开始构建子视图?
更新:我仍在努力让它发挥作用。我现在尝试从头开始创建一个新的视图控制器。视图层次结构如下所示:
您可以在情节提要中看到一些不对劲的地方:
当我在模拟器中运行它时,我得到一个新的错误:
“[UITableViewController loadView] 使用故事板“Main”中的标识符“UIViewController-cDg-wV-aMN”实例化视图控制器,但没有获得 UITableView。但我通过 Ctrl 键从根 VC 中的单元格直接拖动到表视图来创建 segue。
总而言之,这是我想要实现的流程:UIViewController(初始 VC)-> UINavigationController(从底部模态显示)-> UITableViewController(从右到左显示并带有标准导航栏)。
我的 segues 都设置为 Show(例如 Push)
任何帮助或建议将不胜感激。
【问题讨论】:
-
故事板中子表视图的导航栏是否隐藏?
-
您是否将故事板 segue 设置为“显示(例如推送)”?
-
@JoeyEtamity,是的,它们都是“展示(例如推送)”。
-
@TejaNandamuri ,不确定。我没有弄乱代码中的任何可见性属性。我应该在某个地方寻找 IB 吗?
标签: ios uitableview uinavigationcontroller uinavigationbar