我有两个自定义单元格类HomeCell
和CreateCell
。理想情况下,第一个单元格应该是CreateCell
,而HomeCell's
应该从索引'1'开始(在第一个创建单元格之后),但是当前CreateCell
和第一个{{ 1}}是重叠的。有没有一种方法可以将HomeCell
设置为从索引“ 1”开始?
如果需要提供更多代码,请告诉我。
HomeCell's
答案 0 :(得分:2)
由于您要访问第1个索引的List的第0个元素,因此需要在cellForItemAt indexPath:
cell.list = lists[indexPath.item - 1]
通过这种方式,您将从第一个索引开始HomeCell
视图
此外,您将需要更改总项目数,因为还有其他创建单元格。
override func collectionView(_ collectionView: UICollectionView, numberOfItemsInSection section: Int) -> Int {
return lists.count+1
}
答案 1 :(得分:0)
使用indexPath.item
代替indexPath.row
override func collectionView(_ collectionView: UICollectionView, cellForItemAt indexPath: IndexPath) -> UICollectionViewCell {
if indexPath.item == 0 {
let cell = collectionView.dequeueReusableCell(withReuseIdentifier: "CreateCell", for: indexPath) as! CreateCell
//configure your cell here...
return cell
} else {
let cell = collectionView.dequeueReusableCell(withReuseIdentifier: "HomeCell", for: indexPath) as! HomeCell
cell.list = lists[indexPath.item]
//configure your cell with list
return cell
}
}