我有一个似乎成功解析的AS3图像链接到一个名为' smImg'的UIImage数组。
我现在正试图将每个链接作为UIImage附加到我的UICollectionViewCell的imageView(我在其中添加了一个IBOutlet' imageView'。)我一直收到错误' UICollectionViewCell' ;没有名为' imageView'的成员。相关代码如下。
ViewModel.swift:
func imageForItemAtIndexPath(indexPath: NSIndexPath) -> UIImage {
return smImg[indexPath.row]
}
ViewController.swift
func configureCell(cell: UICollectionViewCell, atIndexPath indexPath: NSIndexPath) {
cell.imageView!.image = viewModel.imageForItemAtIndexPath(indexPath) //Error occurs here
}
override func collectionView(collectionView: UICollectionView, cellForItemAtIndexPath indexPath: NSIndexPath) -> UICollectionViewCell {
let cell = collectionView.dequeueReusableCellWithReuseIdentifier("cell", forIndexPath: indexPath) as PhotoCell
configureCell(cell, atIndexPath: indexPath)
return cell
}
PhotoCell.swift
class PhotoCell: UICollectionViewCell {
@IBOutlet weak var imageView: UIImageView!
}
有人可以帮我解决这个问题吗?非常感谢任何帮助,我尽量不在这里问太多问题,但一直无法找到我自己的解决方案。
答案 0 :(得分:1)
你的方法
func configureCell(cell: UICollectionViewCell, atIndexPath indexPath: NSIndexPath) {
cell.imageView!.image = viewModel.imageForItemAtIndexPath(indexPath) //Error occurs here
}
期待一个UICollectionViewCell,您应该将其更改为期待一个照片单元格,因为这是您发送它的。
func configureCell(cell: PhotoCell, atIndexPath indexPath: NSIndexPath) {
cell.imageView!.image = viewModel.imageForItemAtIndexPath(indexPath) //Error occurs here
}
您还需要确保告诉collectionView将PhotoCell用作其单元格类型。因此,当您初始化集合视图时,您需要有一行看起来像这样的
collectionView.registerClass(PhotoCell.self, forCellWithReuseIdentifier: "Reuse Identifier")