gpt4 book ai didi

ios - CollectionViewCell 的容器 View 未填充单元格

转载 作者:行者123 更新时间:2023-11-29 05:27:16 25 4
gpt4 key购买 nike

我有一个collectionView,它的高度和宽度是我使用自动布局设置的约束。在我的

func collectionView(_ collectionView: ...., sizeForItemAt indexPath: IndexPath) 我返回 CGSize(width: self.collectionView.frame.width-20, height: self.collectionView .frame.height) 并且如下面链接的图像所示,它排列得非常好。

问题是该单元格的容器 View (白色空间)根本没有填充绿色空间(即单元格的背景),即使我已经将containerView的约束设置为拥抱左/右/底部/up,边距为 0。

到目前为止我已经尝试过:

  • 为我分配 Collection View 高度的容器 View 设置高度约束

  • updateConstraints()cellForItemAt 中以及在 ```layoutSubview()````

  • 的单元格类中
  • 将容器 View 的框架设置为collectionView的框架

  • cell.layoutIfNeeded()cellForItemAt

这些都没有解决我的问题。

/image/mD2iC.jpg

最佳答案

我认为这是与插图相关的问题。请使用集合委托(delegate)方法

- (UIEdgeInsets)collectionView:(UICollectionView *)collectionView layout:(UICollectionViewLayout*)collectionViewLayout insetForSectionAtIndex:(NSInteger)section{

return UIEdgeInsetsMake(top, left, bottom, right);

}

UICollectionViewFlowLayout *aFlowLayout = [[UICollectionViewFlowLayout alloc] init];

[aFlowLayout setSectionInset:UIEdgeInsetsMake(top, left, bottom, right)];

swift 5.1

func collectionView(_ collectionView: UICollectionView, layout collectionViewLayout: UICollectionViewLayout, insetForSectionAt section: Int) -> UIEdgeInsets {
UIEdgeInsets(top: 0, left: 0, bottom: 0, right: 0)
}

func collectionView(_ collectionView: UICollectionView, layout collectionViewLayout: UICollectionViewLayout, minimumLineSpacingForSectionAt section: Int) -> CGFloat {
return 15.0
}

关于ios - CollectionViewCell 的容器 View 未填充单元格,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/58036513/

25 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com