【发布时间】:2015-01-16 21:33:03
【问题描述】:
我想自定义表格视图控制器的内容(添加一些按钮等),但根视图是表格视图。是否可以将其嵌入到另一个视图中并在其上添加控件?
【问题讨论】:
我想自定义表格视图控制器的内容(添加一些按钮等),但根视图是表格视图。是否可以将其嵌入到另一个视图中并在其上添加控件?
【问题讨论】:
您可以使用容器视图。
在情节提要中创建另一个视图控制器,用于托管这些控件。然后从 Object Library 中拖入 Container View(通常是列表中的最后一项)并将其放置在您希望表格视图出现的位置(可以是整个屏幕) )。这样做,Container View 将创建另一个视图控制器。只需将其删除并将ctrl 从Container View 拖到您的表格视图控制器并选择embed segue。
通过这样做,如果当前表视图控制器不依赖其他视图控制器为其提供数据以使其工作,则您无需更改当前表视图控制器中的任何内容。但是,如果是这样,您可以将 segue 标识符分配给 embed segue,实现 prepareForSegue:sender: 并执行您通常对其他 segue 执行的任何操作。
【讨论】:
您只需将 TableView 添加为 uiviewcontroller 的子视图。记得召集代表。通常我不使用情节提要,但如果你以编程方式进行,你可以这样做:
.h 文件:
@interface EmbeddedTableView : UIViewController <UITableViewDelegate, UITableViewDataSource>
在 .m 文件中,只需将 tableView 添加为 viewcontroller 的子视图即可创建您的 tableView。
你可以看看这个例如:How to set up UITableView within a UIViewController created on a .xib file
【讨论】: