将TableViewController中的TableView嵌入到另一个视图中

我想自定义表视图控制器的内容(添加一些按钮等),但根视图是表视图。 它是一种将它嵌入另一个视图并在其上添加控件的方法吗?

您可以使用容器视图

在故事板中创建另一个用于托管这些控件的视图控制器。 然后从对象库中拖动容器视图 (通常是列表中的最后一项)并将其放在您希望显示表视图的位置(可能是整个屏幕)。 执行此操作, Container View将创建另一个视图控制器。 只需删除它并按住ctrl容器视图拖动到表视图控制器并选择嵌入 segue。

通过这样做,您不必更改当前表视图控制器中的任何内容,如果它不依赖于其他视图控制器来为其提供数据以使其工作。 但是,如果确实如此,您可以将segue标识符分配给embed segue,实现prepareForSegue:sender:并执行您通常对其他segue执行的操作。

您只需将TableView添加为uiviewcontroller的子视图。 记得要求代表。 通常我不使用故事板,但如果你以编程方式进行,你可以这样做:

在.h文件中:

 @interface EmbeddedTableView : UIViewController  

在.m文件中,只需将其添加为viewcontroller的子视图即可创建tableView。

您可以查看此示例: 如何在.xib文件上创建的UIViewController中设置UITableView