Ios UICollectionViewController中的不同背景和collectionCell分隔符颜色

Ios UICollectionViewController中的不同背景和collectionCell分隔符颜色,ios,iphone,xcode,uicollectionview,uicollectionviewlayout,Ios,Iphone,Xcode,Uicollectionview,Uicollectionviewlayout,我必须创建一个UI,其中一行有3个UICollectionViewCell。因此,我使用UICollectionViewController创建了它,节=1,行数=来自api。所以我能够创建6个单元格,其中每行包含3个单元格。这些电池在垂直和水平方向上间隔0.5 pt。 我已经将背景色指定给了collectionView,它使用分隔符 这是我特别需要的:- 问题:- 这是我的UICollectionViewController要求的类型 分隔符需要为红色,未渲染的空间需要为黄色。但我无法做到这

我必须创建一个UI,其中一行有3个
UICollectionViewCell
。因此,我使用
UICollectionViewController
创建了它,节=1,行数=来自api。所以我能够创建6个单元格,其中每行包含3个单元格。这些电池在垂直和水平方向上间隔0.5 pt。 我已经将背景色指定给了collectionView,它使用分隔符

这是我特别需要的:-

问题:- 这是我的
UICollectionViewController
要求的类型 分隔符需要为红色,未渲染的空间需要为黄色。但我无法做到这一点,我可以为
UICollectionView
使用一种背景色,它同时显示分隔符和可用空间。有没有办法拥有不同的颜色


我不想使用UITableView并在
UITableViewCell
中拥有UICollectionView。我知道这种方法,但我想在
UICollectionViewController

中也这样做。如果我正确理解您的问题,您可以通过删除单元格之间的空间来解决此问题。完全移除0.5pt空间。然后,所有的细胞将被粘在一起,你可以在每个细胞内创建你自己的分隔物。不过,这需要一些逻辑,因为所有单元格不应该使用相同的分隔符(如果使用,则中心单元格的每侧将有两个分隔符)

要获得照片,您可以设置以下规则:

每行中的第一个最后一个单元格只能在底部显示分隔符。 中间的所有其他单元格(在本例中,中间的一个单元格)应在底部、左侧、右侧显示分隔符


要添加这些分隔符,只需进入您的自定义
UICollectionViewCell
,在每一侧添加一些
UIViews
,并将其设置为宽度为0.5pt,然后根据需要将其设置为可见。

我建议使用Sti建议的自定义单元格。我通常这样做。但更简单的方法是:

每次重新加载的数据时将子视图添加到collectionView的步骤 集合视图

代码:

let count: CGFloat = CGFloat(items.count)
let numberOfRows: CGFloat = ceil(count / 3.0)
let height: CGFloat = numberOfRows * (cellHeight + seperatorHeight)
if collectionBackView != nil { // controller member object
    collectionBackView.removeFromSuperview()
}

collectionBackView = UIView(frame: 
    CGRect(x: 0, y: 0, width: collectionView.frame.size.width, height: height))
collectionView.addSubview(collectionBackView)
collectionView.sendSubview(toBack: collectionBackView)

我不明白你想要什么。你是说你需要的是红色的hoo空间和黄色的ver空间吗?不,水平和垂直分隔符应该是相同的颜色。但是渲染所有单元后留下的空间应该是不同的color@hasan83我已经编辑了这个问题。让我知道它是否仍然不清楚。我猜两个答案中只有一个问题。我的和sti。我不确定视图框是否可以正确地使用浮点后的值,至少不是所有设备都可以。另一个解决办法是划清界限。谢谢你,我的工作完成了。我想也许有一些很好的方法可以做到这一点。