我在创建包含 UITableView 和其他对象(例如 UIButton 或 UILabel)的 UIView(在 Interface Builder 中)时遇到问题。 UITableView 始终占用 UIView 中的最大空间,无论 UITableView 对象本身的大小如何。文件所有者是一个标准的 UITableViewController。
最佳答案
以下是轻松完成此操作的方法:
1)使用xib创建 TableView Controller 。
2) 将.h文件中的继承类型从UITableViewController更改为UIViewController。
3) 将协议(protocol) UITableViewDataSource、UITableViewDelegate 添加到 .h 文件中。
4)打开xib,添加 View 。
5)将xib中的表格 View 拖到 View 下方,根据需要调整大小。
6) 将文件所有者的“view”属性连接到 View 而不是 UITableView。 TableView 的数据源和委托(delegate)属性仍应连接到文件的所有者。
7) (可选)如果您希望能够重新加载或以其他方式访问 TableView Controller 委托(delegate)方法之外的表(传入 TableView ),请创建一个名为“myTable”或类似名称的 UITableView * IBOutlet,然后连线IB 中的表格对此进行了说明。
<小时/>另一种方法是使用 xib 创建一个新的 UIViewController,向 xib 添加一个表,将数据源/委托(delegate)连接到文件的所有者,然后创建一个新的 UITableViewController 类,用于将方法复制到 View Controller 中,然后删除。
关于iphone - UITableView 使用 Interface Builder 中的所有可用空间,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/1615895/