如何在 CollectionView Cell 中显示字符串?

Posted

技术标签:

【中文标题】如何在 CollectionView Cell 中显示字符串?【英文标题】:How to display string in CollectionView Cell? 【发布时间】:2016-12-12 07:02:53 【问题描述】:

我需要在我的UICollectionViewCell 中显示一个字符串。我创建了一个自定义视图单元格。但是每当我运行应用程序时,它都会显示“致命错误:在展开可选值时意外发现 nil”

func numberOfSections(in collectionView: UICollectionView) -> Int 
    return 1


func collectionView(_ collectionView: UICollectionView, numberOfItemsInSection section: Int) -> Int 
    return places.count


func collectionView(_ collectionView: UICollectionView, cellForItemAt indexPath: IndexPath) -> UICollectionViewCell 

    let cell = collectionView.dequeueReusableCell(withReuseIdentifier: "Cell", for: indexPath) as! PlaceCollectionViewCell

    cell.layer.borderWidth = 0.5
    cell.layer.borderColor = UIColor(colorLiteralRed: 0.278, green: 0.694, blue: 0.537, alpha: 1.00).cgColor

   //cell.placeLabel.tintColor = UIColor(colorLiteralRed: 0.278, green: 0.694, blue: 0.537, alpha: 1.00).cgColor

    cell.layer.cornerRadius = 35
    cell.layer.masksToBounds = true

    //cell.placeLabel.text = places[indexPath.row] as! String
    cell.placeLabel.text = places[indexPath.row]

    return cell

【问题讨论】:

您在哪一行得到错误?您还可以显示 PlaceCollectionViewCell 的代码吗?确保在情节提要中将单元格的标识符设置为“单元格”。 在“cell.placeLabel.text = places[indexPath.row]”这一行出现错误 您能否也显示您的 PlaceCollectionViewCell 代码? @RakeshMohan 显示places数组的初始化。 不,你的自定义collectionview类的代码,其中placeLabel被定义 【参考方案1】:

来自我们在聊天中的讨论...

通过在 viewDidLoad 中执行此行,确保用于自定义单元格的 nib 文件与 collectionView 正确链接。

constCollectionView.register(UINib(nibName:"PlaceCollectionViewCell", bundle:nil), forCellWithReuseIdentifier: "Cell")

【讨论】:

以上是关于如何在 CollectionView Cell 中显示字符串?的主要内容,如果未能解决你的问题,请参考以下文章

如何在其内容大小上匹配水平collectionView Cell的宽度

tableView/collectionView复用prepareForReuse

iOS开发实战——CollectionView中cell的间距设置

collectionView 中cell间距设置建议

collectionView 防止cell复用的方法

不可能将 Cell 添加到 CollectionView