代码之家  ›  专栏  ›  技术社区  ›  Rob Lourens

uiTableView有一个自定义的节标题视图,该视图将消失

  •  0
  • Rob Lourens  · 技术社区  · 16 年前

    TableView、自定义表头和自定义节头是从NIB加载的。将对TableView进行分组。

    加载视图时,第一个节标题不会显示。如果向下滚动,其他部分标题将首先出现,但一旦它们上面的部分接触到屏幕顶部,它们就会消失。

    如果我向上滚动,使消失的部分标题离开屏幕,然后向下滚动,它通常会重新出现。

    这个问题是相当一致的,但并不是完全一致的——有时我需要上下滚动几次才能重新显示标题。有什么可能导致这种情况的想法吗?

    2 回复  |  直到 16 年前
        1
  •  1
  •   Rob Lourens    16 年前

    我修复了它-我使用了一个uiview,用于3个部分,适当地更改文本,然后返回它。在NIB中为每个部分创建单独的UIView解决了这个问题。所以我想你不能这么做。

        2
  •  -3
  •   Chip Coons    16 年前

    自定义视图必须是(或从)uilable或uiimageview对象。您可能需要手动设置标题的行高,以便正确加载和显示自定义视图。

    您应该查看 UITableViewDelegate protocol .

    具体来说,看看这些方法:

    - (UIView *)tableView:(UITableView *)tableView viewForHeaderInSection:(NSInteger)section
    

    - (CGFloat)tableView:(UITableView *)tableView heightForHeaderInSection:(NSInteger)section
    

    关于TableView:ViewForHeaderInSection:方法状态的部分讨论:

    只有在同时实现了TableView:HeightForHeaderInsection:时,此方法才能正确工作。