集合视图右侧无边距
collection view no margin on right
我有一个包含两列的集合。
图像如下:
使其成为两列的代码是:
if let layout = alllistcollview?.collectionViewLayout as? UICollectionViewFlowLayout{
layout.minimumLineSpacing = 10
layout.minimumInteritemSpacing = 10
layout.sectionInset = UIEdgeInsets(top: 0, left: 10, bottom: 0, right: 10)
let size = CGSize(width:(alllistcollview!.bounds.width-30)/2, height: 200)
layout.itemSize = size
}
此外,故事板中的单元格间距如下:
问题是第二列没有出现右侧间距。
另外,单元格的某些部分似乎被切断了。
首先你需要实现 UICollectionViewDelegateFlowLayout
之后像这样添加这个函数
func collectionView(_ collectionView: UICollectionView, layout collectionViewLayout: UICollectionViewLayout, sizeForItemAt indexPath: IndexPath) -> CGSize {
let lay = collectionViewLayout as! UICollectionViewFlowLayout
let widthPerItem = collectionView.frame.width / 2 - lay.minimumInteritemSpacing
return CGSize(width:widthPerItem, height:150)
}
我定义高度为150。别介意
我有一个包含两列的集合。
图像如下:
使其成为两列的代码是:
if let layout = alllistcollview?.collectionViewLayout as? UICollectionViewFlowLayout{
layout.minimumLineSpacing = 10
layout.minimumInteritemSpacing = 10
layout.sectionInset = UIEdgeInsets(top: 0, left: 10, bottom: 0, right: 10)
let size = CGSize(width:(alllistcollview!.bounds.width-30)/2, height: 200)
layout.itemSize = size
}
此外,故事板中的单元格间距如下:
问题是第二列没有出现右侧间距。 另外,单元格的某些部分似乎被切断了。
首先你需要实现 UICollectionViewDelegateFlowLayout
之后像这样添加这个函数
func collectionView(_ collectionView: UICollectionView, layout collectionViewLayout: UICollectionViewLayout, sizeForItemAt indexPath: IndexPath) -> CGSize {
let lay = collectionViewLayout as! UICollectionViewFlowLayout
let widthPerItem = collectionView.frame.width / 2 - lay.minimumInteritemSpacing
return CGSize(width:widthPerItem, height:150)
}
我定义高度为150。别介意