У меня есть UICollectionViewCell
, определенный следующим образом:на выходе равна нулю в UICollectionViewCell
import UIKit
class GalleryCellCollectionViewCell: UICollectionViewCell {
@IBOutlet weak var image: UIImageView!
}
Xcode положить это автоматически, когда я добавил выход. В
override func collectionView(_ collectionView: UICollectionView, cellForItemAt indexPath: IndexPath) -> UICollectionViewCell
функции моего UICollectionViewController
«s, я затем попытаться установить изображение. Мой код
override func collectionView(_ collectionView: UICollectionView, cellForItemAt indexPath: IndexPath) -> UICollectionViewCell {
let cell = collectionView.dequeueReusableCell(withReuseIdentifier: reuseIdentifier, for: indexPath) as! GalleryCellCollectionViewCell
let imagePackage = imagePackages?[indexPath.item]
let uiImage = imagePackage?.getUIImage()
cell.image.image = uiImage
return cell
}
В моем переменном просмотре для отладчика, я вижу, что uiImage
не nil
. Однако cell.image
- nil
. Почему это должно быть? Не удалось ли правильно связать его в storyboard
?
смысл этой строки 'пусть UIImage = imagePackage? .getUIImage()', показать этот метод. –
'@IBOutlet weak var image: UIImageView!' Никогда не используйте такую же переменную, как она объявлена в фреймворке apple, иначе х-код получит конфликт и поймет код в соответствии с ним. –
Как я вижу, ваш код работает, я, кажется, совершенен, поэтому перепроверьте орфографию 'reuseIdentifier' и отлично ли она выделена для свойства' dequeue' ячейки или нет. –