【问题标题】:UITableView with "static" headers带有“静态”标题的 UITableView
【发布时间】:2012-03-07 14:07:24
【问题描述】:

我得到了一个 UITableView,它有几个标题,并且在自定义的 tableview 背景上具有清晰的背景。

滚动表格视图时出现问题,并且标题停留在表格视图顶部以指示哪个部分处于“活动状态”的默认功能。因为 headerview 有一个清晰的背景,所以 headerview 下面的行中的文本通过 headers 是可见的,它看起来非常糟糕。

tableview 是否有某种设置可以使标题在滚动时“跟随”行并禁用此默认行为?

希望大家理解我的问题,如果问题解释得不够好,我可以提供截图。

【问题讨论】:

  • 你能给它的屏幕截图吗?

标签: iphone uitableview


【解决方案1】:

以下是一种解决方案:

- (void)scrollViewDidScroll:(UIScrollView *)scrollView {
       CGFloat sectionHeaderHeight = 40;
   if (scrollView.contentOffset.y<=sectionHeaderHeight&&scrollView.contentOffset.y>=0) {
       scrollView.contentInset = UIEdgeInsetsMake(-scrollView.contentOffset.y, 0, 0, 0);
   } else if (scrollView.contentOffset.y>=sectionHeaderHeight) {
       scrollView.contentInset = UIEdgeInsetsMake(-sectionHeaderHeight, 0, 0, 0);
   }
}

但是当标题到达顶部时它会有点闪烁。

另外一个建议是制作分组表格视图。

还有一件事是在顶部添加一个零行的部分,并简单地将上一个部分的页脚用作下一个部分的页眉。

【讨论】:

    【解决方案2】:

    我认为你无法改变这种行为。

    我认为您最好的选择是不使用内置标题,而是将自定义标题实现为 UITableViewCells 并将它们交错返回到来自 -tableView:cellForRowAtIndexPath: 的内容中。

    【讨论】:

      【解决方案3】:

      这很奇怪,我偶然发现了这一点。在您的故事板上更改单击您的表格视图并将表格的样式从普通更改为分组!当我这样做时,标题就像表格视图单元格一样上下滚动

      【讨论】:

        猜你喜欢
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 1970-01-01
        • 2010-10-22
        • 2012-01-28
        相关资源
        最近更新 更多