swift/collectionviewCell選択時に背景色を変更

import UIKit
class ThumbnailCell: UICollectionViewCell {
   var thumbnailImageView: UIImageView
   
   required init?(coder: NSCoder) {
       fatalError("init(coder:) has not been implemented")
   }
   
   override init(frame: CGRect) {
       thumbnailImageView = .init(frame: .zero)
       super.init(frame: frame)
       self.backgroundColor = .gray
       let selectedBGView = UIView(frame: self.frame)
       selectedBGView.backgroundColor = .orange
       self.selectedBackgroundView = selectedBGView
       configureImageView()
   }
   
   private func configureImageView() {
       thumbnailImageView.translatesAutoresizingMaskIntoConstraints = false
       contentView.addSubview(thumbnailImageView)
       NSLayoutConstraint.activate([
           thumbnailImageView.topAnchor.constraint(equalTo: contentView.topAnchor, constant: 3),
           thumbnailImageView.bottomAnchor.constraint(equalTo: contentView.bottomAnchor, constant: -3),
           thumbnailImageView.leadingAnchor.constraint(equalTo: contentView.leadingAnchor, constant: 3),
           thumbnailImageView.trailingAnchor.constraint(equalTo: contentView.trailingAnchor, constant: -3)
       ])
       
   }
}

上記の場合では未選択時にグレー、選択時にオレンジになる

【参考資料】
teratail-collectionView セル選択時に色を変える

この記事が気に入ったらサポートをしてみませんか?