【问题标题】:How to set my view as my TableViewheader?如何将我的视图设置为我的 TableViewheader?
【发布时间】:2015-01-15 00:35:28
【问题描述】:

我已经为我的 UITableViewController 创建了一个视图(其中包含一个搜索栏和一些按钮)。然后我在我的 ViewController.h 文件中为视图创建了一个出口,并在我的 ViewController.m 文件中合成它。

这是我当前设置的屏幕截图

我正在使用

self.tableView.tableHeaderView = headerView;

我正在使用

- (UIView*)tableView:(UITableView *)tableView viewForHeaderInSection:(NSInteger)section
{
    return headerView;
}

但是我的视图还是随着表格上下滚动,好像没有正确设置为表头?

【问题讨论】:

    标签: ios uitableview


    【解决方案1】:

    “它似乎没有被正确地设置为标题”——是的,它被正确地设置了。这就是表头的行为方式。如果你不希望它滚动,那么你可以做两件事之一。将视图作为同级视图添加到 UIViewController(您的视图在上方,表格视图在下方),或者,如果您只有一个部分,则可以将其用作会粘在顶部的部分标题。

    【讨论】:

    • 如何将其设置为节标题?
    • @Phil,你实现了 tableView:viewForHeaderInSection
    • @Phil,去掉这行,self.tableView.tableHeaderView = headerView;我不知道这是否会干扰您对 viewForHeaderInSection 的实现。您还应该实现 heightForHeaderInSection。
    • 我按照建议删除了该行,但它仍在上下滚动。
    • @Phil,那是因为您将视图添加到情节提要中的表格视图中,这会自动使其成为表格标题视图(即使您删除了该行)。您应该在 xib 文件中创建该视图(您可以将其复制并粘贴到一个文件中),然后注册该 xib(registerNib:forHeaderFooterViewReuseIdentifier:)。在 viewForHeader InSection 中,您将使用 dequeueReusableHeaderFooterViewWithIdentifier: 来获取您的视图。请务必实现 tableView:heightForHeaderInSection: 否则高度将为 0。
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2014-04-23
    • 1970-01-01
    • 2012-01-02
    • 2020-12-21
    • 1970-01-01
    • 1970-01-01
    相关资源
    最近更新 更多