UITableView使用Interface Builder中的所有可用空间

Jam*_*Sun 7 iphone interface-builder

我在创建UIView(在Interface Builder中)时遇到问题,该UIView包含带有其他对象的UITableView,例如UIButton或UILabel.无论UITableView对象本身的大小如何,UITableView总是占用UIView中的最大空间量.文件所有者是标准的UITableViewController.

Ken*_*ner 12

以下是如何轻松完成此操作:

1)使用xib创建表视图控制器.

2)将.h文件中的继承类型从UITableViewController更改为UIViewController.

3)将协议UITableViewDataSource,UITableViewDelegate添加到.h文件中.

4)打开xib,添加视图.

5)在视图下的xib中拖动表视图,根据需要调整大小.

6)将文件所有者的"view"属性连接到View而不是UITableView.表视图的数据源和委托属性仍应连接到文件的所有者.

7)(可选)如果你想能够重新加载或以其他方式访问表视图控制器之外的表委托传递表视图的方法,创建一个名为"myTable"的UITableView*IBOutlet等,并将表连接到IB到那.


另一种方法是使用xib创建一个新的UIViewController,向xib添加一个表,将数据源/委托连接到文件的所有者,然后创建一个新的UITableViewController类,用于将方法复制到视图控制器中,然后删除.