我需要计算表格的单元格高度并将其四舍五入为能被5整除的值。例如,当单元格大小为116时,正确的高度应为120。
关键是我使用自适应布局来计算单元格高度。 UITableViewCell 的 subview 之一是一条垂直虚线,它应该连接到下面的单元格。虚线由 5 个点的重复组成 - 破折号(2 分)和间隙(3 分)。因此,线 View 的高度应四舍五入为可被 5 整除的值,以便与下方单元格的虚线正确连接。
最佳答案
假设您只想在值不是 5 的倍数时四舍五入,那么这样的事情很有用: 我们需要特别舍入 CGFloat(这是 UIViews 的衡量标准):
let currentHeight = CGFloat(123.456)
let newHeight = ((currentHeight + 4.99) / 5).rounded(.down) * 5
=> 125
let currentHeight = CGFloat(125)
let newHeight = ((currentHeight + 4.99) / 5).rounded(.down) * 5
=> 125
我会将单元格的高度设置为五的倍数,并将虚线 View 的高度设置为相同。 (我认为这就是您的意图,只是确定一下)。
不要忘记您需要设置表格单元格的高度和tableCell.contentView 的高度。另外,您需要让 UITableView 知道其布局的单元格高度。
关于swift - 在 Swift 中舍入表格单元格的高度,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/51114406/