【问题标题】:Obtaining the UITableViewHeaderFooterView of a static UITableView获取静态 UITableView 的 UITableViewHeaderFooterView
【发布时间】:2012-11-13 09:54:06
【问题描述】:

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

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

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

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

任何帮助将不胜感激, 计算机科学

【问题讨论】:

    标签: ios static interface-builder uitableview


    【解决方案1】:

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

    例如,假设您定义了一个名为 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;
     }
    

    【讨论】:

    • 谢谢影魔。出于某种原因,我认为会有一个现有的页眉/页脚视图,因为我能够在 IB 中自定义它们。
    • 其实有一个,但是苹果不让你访问。这些天,它们正在破坏 Cocoa 的许多优点。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 2012-04-24
    • 1970-01-01
    • 2012-11-29
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多