2

我有一个包含UITableViewController. 表格视图是静态的,包含两个部分。表视图完全在 IB 中设置(包括表视图部分的页眉和页脚文本)——我没有在我的视图控制器中实现任何表视图委托方法。

如果我尝试获取对UITableViewHeaderFooterView给定部分的引用,它总是返回 nil。

UITableViewHeaderFooterView* header =[self.tableView headerViewForSection:0];

当我运行应用程序时,我可以看到我在 IB 中设置的页眉和页脚文本,所以我知道这些视图在那里。我只是不知道如何以编程方式访问它们。

任何帮助将不胜感激,CS

4

1 回答 1

2

实际上,您需要指定表格页脚视图,并使用其委托将其传递给表格视图。

例如,假设您定义了一个名为 tableFooterView 的 IBOutlet UIView。然后在下面的委托方法中,您可以将您的 tableFooterView 传递给您的表格视图:

- (UIView *)tableView:(UITableView *)tableView viewForFooterInSection:(NSInteger)section;   // custom view for footer. will be adjusted to default or specified footer height
{
    return self.tableFooterView;
}

您还需要实现以下方法来设置表格页脚视图的高度:

 -(CGFloat)tableView:(UITableView *)tableView heightForFooterInSection:(NSInteger)section
 {
    return self.tableFooterView.frame.size.height;
 }
于 2012-11-25T23:20:21.937 回答