ios - 获取静态 UITableView 的 UITableViewHeaderFooterView

标签 ios static interface-builder uitableview

我有一个包含 UITableViewController 的 Storyboard。 TableView 是静态的,包含两个部分。 TableView 完全在 IB 中设置(包括 TableView 部分的页眉和页脚文本) - 我没有在 View Controller 中实现任何 TableView 委托(delegate)方法。

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

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

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

任何帮助将不胜感激, CS

最佳答案

实际上,您需要指定表页脚 View ,并使用其委托(delegate)将其传递给 TableView 。

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

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

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

 -(CGFloat)tableView:(UITableView *)tableView heightForFooterInSection:(NSInteger)section
 {
    return self.tableFooterView.frame.size.height;
 }

关于ios - 获取静态 UITableView 的 UITableViewHeaderFooterView,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/13556086/

相关文章:

ios - 如何使用 DeviceCheck API 快速获取唯一 ID?

xcode - 自动调整 NSButton 的大小以适应以编程方式更改的文本 (Xcode)

iPhone:键盘挡住屏幕

ios - 更新 Xcode 中的框架和约束(Interface Builder)

java - 将方法 makeEvent() 设为静态有什么优点吗?

Java:调用静态方法但没有任何反应?

ios - 类型 UIView 的值没有成员错误

php - iOS - 使用相同的消息和有效负载同时从同一服务器向多个应用程序发送推送通知的正确方法

javascript - 在 iPad/iPhone 上滚动时获取 scrollTop()

java - 并发静态上下文