ios - UITableView分隔符style=无与分隔符颜色=.clear

标签 ios swift uitableview separator

昨天我看了别人的一个相当大的项目,我注意到只要不打算让 UITableView 生成分隔符,它都是通过设置 tableView.separatorColor = .clear 来完成的> 而不是 tableView.separatorStyle = .none

现在我想知道是否有原因。结果是否有任何不同,或者更改样式属性是否会因为缺少 0.5p 而以某种方式扰乱约束?

最佳答案

是的,您的思考方向是正确的。

tableView.separatorColor = .clear//清除分隔符背景色

tableView.separatorStyle = .none//它从 superview 中删除分隔符(UITableCell)

案例研究:

考虑将 UITableViewCell 的高度设置为 50。

func tableView(_ tableView: UITableView, heightForRowAt indexPath: IndexPath) -> CGFloat {
    return 50
}

如果UITableViewCell中有一个UILabel,并且您提供了前导、尾随、顶部和底部约束,则tableView。 separatorStyle = .none 不会导致任何约束破坏,因为 UILabel 的高度将自动增加。

但是,如果在上述情况下,如果您也应用了高度约束,那么计算的高度和约束高度将会有0.5像素的差异。

这不一定每次都会发生,但为了防止这种情况,我们应该使用tableView.separatorColor = .clear

关于ios - UITableView分隔符style=无与分隔符颜色=.clear,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/52663882/

相关文章:

swift - 如何仅设置左下角、右下角和左上角的图层角半径?

swift - swift中的类变量只能通过类函数访问吗?

ios - 数组有追加,但里面没有值

ios - Flurry 分析中自定义事件的最大数量?

ios - JSQMessage 从未格式化的字符串设置日期属性

swift - 在函数签名中指定模式时,临时多态性/函数重载在 Swift 中不起作用

iphone - 基于通知更新表格单元格的最佳实践

ios - 如何使用自动布局使圆形 imageView 保持圆形?

ios - 三 Sprite 节点碰撞

uitableview - 无法快速将自定义单元格值传递给新的 viewController