【问题标题】:How to hide UITableView section separator using Eureka如何使用 Eureka 隐藏 UITableView 部分分隔符
【发布时间】:2020-10-21 18:16:45
【问题描述】:

我正在使用Eureka 框架来设置分组 UITableView 的样式,并且我想隐藏节标题和节的第一个单元格之间出现的细分隔符(但将分隔符保留在第一节中)。下面的代码正确隐藏了分隔符,但仅当单元格出现在屏幕上时。当我打开控制器并看到 TableView 时,分隔符就在那里,我需要将单元格从屏幕上滚动出来并向后滚动以使其工作。有没有办法隐藏分隔符?在下面的屏幕截图中,Height 单元格隐藏了分隔符(我试图达到的目的),Current weight 单元格仍然显示分隔符。有什么办法可以立即隐藏分隔符吗?

override func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell {
    let cell = super.tableView(tableView, cellForRowAt: indexPath)
    
    if let divider = cell.subviews.first(where: { $0.frame.minY == 0 && $0 !== cell.contentView }) {
        divider.isHidden = indexPath.section != 0 && indexPath.row == 0 ? true : false
    }
    
    cell.setNeedsDisplay()
    
    return cell
}

【问题讨论】:

标签: ios swift uitableview eureka-forms


【解决方案1】:

尝试在 viewDidLoad ow viewWillAppear 中重新加载表格视图

【讨论】:

  • 当我在 viewDidLoad 或 viewWillAppear 中重新加载表时它不起作用,但是当我在 viewDidAppear 中重新加载它时它会起作用。但是,分隔符暂时可见
  • 尝试删除表格视图中的分隔线,如果需要,只需添加自己的分隔符
  • 我想这是唯一的方法。我认为有一些快速而优雅的方式来做到这一点。加载表格时没有删除分隔符,这很奇怪
  • 这很奇怪,但它为您提供了更多空间来自定义您的单元格
猜你喜欢
  • 2015-11-05
  • 2015-10-04
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
  • 1970-01-01
相关资源
最近更新 更多