首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >如何在界面生成器中将导航栏添加到UITableViewController?

如何在界面生成器中将导航栏添加到UITableViewController?
EN

Stack Overflow用户
提问于 2011-02-22 00:44:43
回答 8查看 71.5K关注 0票数 47

界面生成器不允许我单击导航栏并将其拖动到表视图控制器上!这是超级令人沮丧的。

我想要的只是一个带有编辑按钮的表视图(在interface-builder中完成)。如果这是不可能的,那么我如何以程序方式添加导航栏?

提前谢谢。

EN

回答 8

Stack Overflow用户

发布于 2014-09-13 02:07:33

在outline视图中,确保您的表视图控制器被选中。

然后转到编辑器菜单,单击Embed In子菜单,然后选择导航控制器。您的导航控制器指向具有内置关系的tableview控制器。

票数 59
EN

Stack Overflow用户

发布于 2011-05-05 10:01:17

对于顶部有编辑按钮的表视图,请使用UINavigationController,并使用UITableView作为rootView。这意味着您将为表视图创建一个自定义UITableView子类,并将其用作UINavigationController实例的rootView。(在编程上,它是用UINavigationController的-(id)initWithRootViewController设置的。它也可以通过IB进行设置。)

然后,在UITableView子类中,取消对以下行的注释:

代码语言:javascript
复制
- (void)viewDidLoad {
    [super viewDidLoad];
    // Uncomment the following line to display an Edit button in the navigation bar for this view controller.
    self.navigationItem.rightBarButtonItem = self.editButtonItem;
}

瞧,UINavigationController的视图显示为一个表视图,导航栏右侧有一个编辑按钮。

由于控制器位于堆栈的顶部,因此左侧没有“后退”按钮,因此您可以对创建的任何UIBarButtonItem使用self.navigationItem.leftBarButtonItem

票数 19
EN

Stack Overflow用户

发布于 2011-02-22 03:50:14

我同意在Interface Builder中很难弄清楚如何做这样的事情,但幸运的是,可以通过这种方式将导航栏和栏按钮项添加到表视图中。下面是如何做的:

  1. 将一个空白视图(UIView的一个实例)从库拖动到表视图顶部附近的区域。当您拖动到目标区域附近时,Interface Builder将以蓝色突出显示它,以向您显示将视图放在何处。松开鼠标,该视图将作为表视图标题视图的子视图添加。
  2. 从库中拖动导航栏,并将其放到刚刚添加的空白视图上。
  3. 从库中拖动条形按钮项目,并将其放到导航栏上。

编辑

上述方法的问题是,正如Bogatyr指出的那样,导航栏将与表视图一起滚动。苹果公司建议使用UIViewController的自定义子类,它同时拥有导航栏和调整大小以适合的UITableView实例。不幸的是,这意味着您必须自己实现UIViewController子类所需的UITableViewController行为。

另一种似乎效果很好的方法是创建UIViewController的自定义子类,该类拥有一个包含导航栏的空白背景视图和一个适合于导航栏下的空白内容视图(UIView的一个实例)。您的自定义子类将有一个插座,指向同一nib文件中的UITableViewController实例。

这样做的好处是允许在Interface Builder中创建和配置所有视图组件,并且不需要从头开始实现UITableViewController方法。在表视图控制器的父级中,您需要注意的唯一细节是在viewDidLoad中将表视图添加为父级内容视图的子视图。

父级可以实现导航栏按钮项的操作方法,并在必要时实现委托模式。

票数 12
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/5068659

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档