ios - UITableViewController 内的 UINavigationBar

标签 ios objective-c uitableview

我有一些要显示的静态单元格,所以我有一个 UITableViewController。该场景中还有一个导航栏,顶部包含一些按钮。设置如下所示:

UITableViewController setup

如果我有一个包含 UITableView 的 UIViewController,设置将如下所示:

UIViewController setup

所以,问题是:

  • 为什么使用 UITableViewController 时导航栏必须嵌入 UITableView 中? (我曾尝试将其放在其他地方,但 IB 不允许)
  • 我知道 UITableView 是 UIView 的子类,但是层次结构中的顶级元素不是 View(而是 TableView)可以吗?

谢谢。

最佳答案

您不应该将 UINavigationBar 放置在 UITableView 中。您应该将 UITableViewController 放入 UINavigationController 中,因为这将为您提供 UINavigationBar

因此,如果您在 Storyboard 中选择 UITableViewController,则可以从“编辑器”菜单中选择“嵌入”->“导航 Controller ”。这将是正确的方法。

关于ios - UITableViewController 内的 UINavigationBar,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/20908598/

相关文章:

ios - 具有两个 TableView 的 SplitviewController,委托(delegate)问题

ios - xcode5-按下按钮后播放声音不起作用

ios - 什么是前向调用?应该怎么办?为什么要使用它?

android - react-native-keyboard-aware-scroll-view 无法正常工作

ios - Objective-C 从 block 中获取变量

ios - 无法使用 '[Array<String>]' 类型的索引为 '(section)' 类型的值添加下标。类型'(又名 'section.Type' )

ios - UITableView - 通过点击现有单元格插入新行

iphone - LocalPushNotification声音和iPhone的音量按钮

objective-c - 访问数组中的元素 - 请求非结构或联合中的成员

ios - 根据 key 的值从字典的 NSArray 中获取公共(public)元素