我正在尝试设置集合视图单元格的大小,以便每行获得两个单元格。
我已经查看了许多解决方案,用于确定收集视图的单元大小。实际上,在为每行确定三个对我有用的单元之前,我实际上已经使用了一些解决方案。
到目前为止我所拥有的:
extension BusinessViewController: UICollectionViewDelegateFlowLayout {
func collectionView(_ collectionView: UICollectionView, layout collectionViewLayout: UICollectionViewLayout, sizeForItemAt indexPath: IndexPath) -> CGSize {
let width = (view.frame.width - 20) / 2.0
return CGSize(width: width, height: width)
}
func collectionView(_ collectionView: UICollectionView, layout collectionViewLayout: UICollectionViewLayout, insetForSectionAt section: Int) -> UIEdgeInsets {
return UIEdgeInsets(top: 5, left: 5, bottom: 5, right: 5)
}
func collectionView(_ collectionView: UICollectionView, layout collectionViewLayout: UICollectionViewLayout, minimumLineSpacingForSectionAt section: Int) -> CGFloat {
return 10
}
func collectionView(_ collectionView: UICollectionView, layout collectionViewLayout: UICollectionViewLayout, minimumInteritemSpacingForSectionAt section: Int) -> CGFloat {
return 10
}
}
现在,我每行只有一个大单元,我不知道为什么。通常,当我每行必须有3个单元格时,只需从视图宽度中减去插图并除以所需单元格的数量即可。不知道为什么这会引起我问题。
答案 0 :(得分:1)
您可以尝试检查UICollectionView的“ estimatesSize”属性。 可以将其设置为“自动”,而不是“无”。 我用这个解决方案解决了同样的问题