我正在渲染一个集合视图,我希望在其中呈现3列中的项目。 如果我有4个项目,它就像这样呈现 -
| 1 | 2 | 3 |
| | 4 | |
希望实现这一目标
| 1 | 2 | 3 |
| 4 | | |
还有2个项目 - 如下所示呈现
| 1 | | 2 |
以下是我的布局逻辑的样子
func collectionView(_ collectionView: UICollectionView, layout collectionViewLayout: UICollectionViewLayout, sizeForItemAt indexPath: IndexPath) -> CGSize {
if UIDevice.current.userInterfaceIdiom == .pad || UIDevice.current.orientation.isLandscape {
let cellsAcross: CGFloat = 3
let spaceBetweenCells: CGFloat = 0
let dim = (collectionView.bounds.width - (cellsAcross - 1) * spaceBetweenCells) / cellsAcross
return CGSize(width: dim - CGFloat(1.0), height: CGFloat(110))
} else {
let cellsAcross: CGFloat = 2
let spaceBetweenCells: CGFloat = 0
let dim = (collectionView.bounds.width - (cellsAcross - 1) * spaceBetweenCells) / cellsAcross
return CGSize(width: dim - CGFloat(1.0), height: CGFloat(110))
}
}
如何正确重新安排物品。任何帮助都非常感谢。 感谢。