类型的价值' UICollectionViewCell'没有会员' imageView'

时间:2016-12-04 12:17:04

标签: iphone swift3 xcode8 ios10

我正在设置一个显示图片的UICollectionView的新项目。我创建了ViewControllerCellViewController,就像它应该的那样。

CellViewController中,代码如下:

import UIKit

class ClubCollectionViewCell: UICollectionViewCell {
    @IBOutlet weak var imageView: UIImageView!
}

但在ViewController我设置图片时,它会给我错误。这是代码:

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


    let cell = collectionView.dequeueReusableCell(withReuseIdentifier: reuseIdentifier,
                                                      for: indexPath)
    // Configure the cell
    cell.backgroundColor = UIColor.black
    cell.imageView.image = UIImage(named: "pic1")
    return cell;
}

提前致谢..

1 个答案:

答案 0 :(得分:1)

您应该将collectionViewCell子类强制转换为自定义的ClubCollectionViewCell

使用guard检查单元格的类型,如果失败则执行fatalError()

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

    guard let cell = collectionView.dequeueReusableCell(withReuseIdentifier: reuseIdentifier,
                                                            for: indexPath) as? ClubCollectionViewCell else {
                                                                    fatalError("Wrong cell class dequeued")
    }
        // Configure the cell
        cell.backgroundColor = UIColor.black
        cell.imageView.image = UIImage(named: "pic1")
        return cell
 }