我正在设置一个显示图片的UICollectionView
的新项目。我创建了ViewController
和CellViewController
,就像它应该的那样。
在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;
}
提前致谢..
答案 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
}