在Swift中舍入表格单元格的高度

问题描述 投票:1回答:1

我需要计算表格的单元格高度并将其四舍五入为5,例如,当单元格大小为116时,正确的高度应为120。

关键是我使用自适应布局来计算单元格高度。 UITableViewCell的子视图之一是垂直虚线,它应该连接到下面的单元格。虚线包括重复5个点 - 短划线(2个点)和间隙(3个点)。因此,线视图的高度应向上舍入到可被5整除的值,以便与下面的单元格虚线正确连接。

Two cells with connected dashed line

swift uitableview adaptive-layout
1个回答
0
投票

假设你只想在值已经是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

我将单元格的高度设置为五的倍数,并将虚线视图的高度设置为相同。 (我认为这就是你的意图,只是确保)。

不要忘记您需要设置表格单元格的高度和tableCell.contentView的高度。另外,您需要让UITableView知道其布局的单元格高度。

© www.soinside.com 2019 - 2024. All rights reserved.