【问题标题】:Grouped TableView customization to avoid spaces分组 TableView 自定义以避免空格
【发布时间】:2012-01-05 10:11:38
【问题描述】:

这是我的分组表格视图:

是否可以避免节之间的间距,并显示分组表,就好像没有节一样?

提前致谢,亚萨

【问题讨论】:

    标签: ios customization uitableview


    【解决方案1】:

    可能不是您想听到的,但不是。没有很好的方法来做到这一点。我认为您可以最小化组之间的空间,但这看起来很糟糕。

    另一种方法是使用一个部分,但右侧不会有这个漂亮的小字母。

    但是如果你不希望单元格之间没有空格,为什么不使用 UITableViewPlainStyle?

    【讨论】:

    • 仅仅出于审美原因:我喜欢分组表的外观。我试过用 table.layer.cornerRadius 和 table.layer.border 来圆桌的角落,但这与分组表格的效果不同!还有其他建议/解决方法吗?
    • 嗯,在这种情况下,我会像文斯一样说
    【解决方案2】:

    您的表格视图中似乎没有任何页眉或页脚内容,所以我认为您可以通过实现表格视图的委托方法来实现:

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

    如果你也实现这两种方法可能会正常工作:

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

    为每个返回 nil

    【讨论】:

    • 我想过这个......但是以哪种方式?我必须在这些方法中写什么?提前致谢。
    • 这些方法应该返回一个CGFloat,你已经为表格视图设置了一个委托。所以我认为只需 return 0.0; 就可以了。
    • 不可能,最小值是 1.0。减少更多这个空间的唯一方法是使用 tableView.sectionHeaderHeight 但效果很难看(另见stackoverflow.com/questions/2817308/…)...
    • 好的,所以尝试实现这两个方法,加上返回页眉和页脚视图的两个,返回nil
    【解决方案3】:

    在 iOS 7 中,我通过实现 next 方法自定义了分组表视图中各部分之间的空间:

    - (CGFloat)tableView:(UITableView *)tableView heightForFooterInSection:(NSInteger)section
    {
        return 10; // there might be your height
    }
    

    要使此方法在 iOS 5 之前有效,您还应该在 tableView:viewForFooterInSection: 中返回非零视图。

    在 iOS 5.0 之前,表格视图会自动调整高度 对于 tableView:viewForFooterInSection: 部分的页脚为 0 返回零视图。在 iOS 5.0 及更高版本中,您必须返回实际的 此方法中每个节页脚的高度。

    【讨论】:

      猜你喜欢
      • 2020-03-20
      • 2012-04-13
      • 2023-04-01
      • 1970-01-01
      • 1970-01-01
      • 2022-11-01
      • 2020-01-02
      • 1970-01-01
      • 2021-11-01
      相关资源
      最近更新 更多