我有一个带自定义单元格的UICollectionView。一切都正常,但我不知道该怎么做是为每个单元格中的标签分配不同的文本。我在每个部分都有一个部分和三个项目。我希望所有三个项目都具有完全相同的布局。我的想法是我需要为每个单元格分配不同的标识符,但我不确定如何为不止一个单元格标识符设置不同的文本。
感谢任何帮助,谢谢。
let reuseIdentifier = "directionCell"
override func numberOfSectionsInCollectionView(collectionView: UICollectionView) -> Int {
return 1
}
override func collectionView(collectionView: UICollectionView, numberOfItemsInSection section: Int) -> Int {
return 3
}
override func collectionView(collectionView: UICollectionView, cellForItemAtIndexPath indexPath: NSIndexPath) -> UICollectionViewCell {
let cell = collectionView.dequeueReusableCellWithReuseIdentifier(reuseIdentifier, forIndexPath: indexPath) as! CustomCollectionViewCell
cell.titleLabel.text = "Current title"
cell.subtitleLabel.text = "Choose to start"
cell.layer.cornerRadius = 10
return cell
答案 0 :(得分:1)
如果你有3个单元格,3个单元格有不同的内容,只需创建3个collectionviewcels并连接IB出口,然后调用这样的主题: -
func collectionView(collectionView: UICollectionView, cellForItemAtIndexPath indexPath: NSIndexPath) -> UICollectionViewCell {
var cell: UICollectionViewCell!
let reuseIdentifier = "CustomCollectionViewCell"
let cell1 = collectionView.dequeueReusableCellWithReuseIdentifier(reuseIdentifier, forIndexPath: indexPath) as! CustomCollectionViewCell
if indexPath.row == 0 {
cell1.titleLabel.text = "Current title"
cell1.subtitleLabel.text = "Choose to start"
cell1.layer.cornerRadius = 10
cell = cell1
} else if indexPath.row == 1 {
cell2.titleLabel.text = "Current title"
cell2.subtitleLabel.text = "Choose to start"
cell2.layer.cornerRadius = 10
cell = cell2
} else {
cell3.titleLabel.text = "Current title"
cell3.subtitleLabel.text = "Choose to start"
cell3.layer.cornerRadius = 10
cell = cell3
}
return cell
}
答案 1 :(得分:0)
当你将numberOfItemsInSection设置为3时,cellForItemAtIndexPath也将被调用3次。因此,如果您希望显示一组数据或信息,请在cellForItemAtIndexPath函数中使用它来获取所需的结果。因此,假设您有一个标题数组,请使用该数组 cellForItemAtIndexPath。
KafkaTopicOffsetManager