0

背景ビューを画像として設定しようとしていますが、画像付きのセルは表示されません。私は下にスクロールすることができますので、実際にそこには細胞があることを知っていますが、背景の画像はありません、私は本当に速く、あなたは正しい画像を作ることができますが、Swift3 - 画像付きのセルが表示されない

なぜでしょうか?

HERESに私のコード:

let image: UIImageView = { 
    let imgview = UIImageView() 
    imgview.image = UIImage(named: "myImage") 
    imgview.contentMode = .scaleAspectFit 
    imgview.clipsToBounds = true 
    return imgview 
}() 

override func collectionView(_ collectionView: UICollectionView, cellForItemAt indexPath: IndexPath) -> UICollectionViewCell { 
    let cell = collectionView.dequeueReusableCell(withReuseIdentifier: "cell-id", for: indexPath) 
    cell.contentView.addSubview(image) 
    cell.backgroundView = image 
    return cell 
} 

答えて

1

あなたはcellForItemAtaddSubviewメソッドを呼び出すべきではありません。 cellForItemAtは何度も何度も呼ばれています。

は、このコードを試してみてください。

override func collectionView(_ collectionView: UICollectionView, cellForItemAt indexPath: IndexPath) -> UICollectionViewCell { 
    let cell = collectionView.dequeueReusableCell(withReuseIdentifier: "cell-id", for: indexPath) 

    UIGraphicsBeginImageContext(cell.frame.size) 
    UIImage(named: "myImage")?.draw(in: cell.bounds) 
    if let image: UIImage = UIGraphicsGetImageFromCurrentImageContext() { 
     UIGraphicsEndImageContext() 
     cell.backgroundColor = UIColor(patternImage: image) 
    } 
    return cell 
} 
+0

本当にありがとうございました! – Jeamz

+0

このコードは私のためにも機能しました!私は今、UITableViewのセルに使用しています。ありがとうございました。 – RobertL

関連する問題