水平CollectionView间距无法正常工作

时间:2018-09-15 13:41:40

标签: swift xcode uicollectionview

你好,我正在屏幕上制作水平集合视图图像,然后滚动查看第二个问题,是我给我的collectionView留出间隔,然后滚动到另一幅图像时,它显示另一条记录的一半图像意味着一侧的一半图像和第一条记录的图像指导我如何给定适当的间距,我想在屏幕上显示单个图像,以便以间距查看第二 这是间隔的屏幕截图

enter image description here

这是当我滚动1或2张图像然后显示另一张记录的一半图像时我所面对的 enter image description here

我已经在使用CollectionViewLayout为我的单元格赋予相同的宽度和高度

 func collectionView(_ collectionView: UICollectionView, layout collectionViewLayout: UICollectionViewLayout, sizeForItemAt indexPath: IndexPath) -> CGSize {
            let width = collectionView.frame.size.width
            let height = collectionView.frame.size.height
            return CGSize.init(width: width, height: height)

        }

1 个答案:

答案 0 :(得分:0)

要使UICollectionView完美,您需要:

  1. 添加collectionView的delegatedata source属性
  2. 您需要在UICollectionView中或通过实现storyboard方法通过代码指定UICollectionViewDelegateFlowLayout单元格的大小。
  3. 对于间距,您需要输入cell spacing
  4. 在需要时提供section insets

你很好。提供代码和描述问题的屏幕截图后,我将为您提供更多帮助。

编辑:

这是您可以用来提供UICollectionViewCell的大小和间距详细信息的代码。

也不要忘记遵守UICollectionViewDelegateFlowLayout协议。

func collectionView(_ collectionView: UICollectionView, layout collectionViewLayout: UICollectionViewLayout, sizeForItemAt indexPath: IndexPath) -> CGSize
{
    return CGSize(width: 300.0, height: 135.0)
}

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

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