Мне нужна помощь в этой проблеме.я хочу, чтобы мое приложение превратило фон для одной из его ячеек в UIColor.blue, но я также хочу, чтобы оно превратило весь фон другой ячейки в прозрачный цвет.в основном я хочу, чтобы выделенная ячейка выделялась среди остальных, указывая пользователю, что они просто щелкают по этой ячейке.
, поэтому ниже цвет фона клика пользователя ячейки становится синим.но как только я нажимаю на другую ячейку, эта текущая ячейка также становится синей.мне это нужно, когда пользователь нажимает на ячейку, она превращает другую ячейку обратно в чистый фон.
func collectionView(_ collectionView: UICollectionView, didSelectItemAt indexPath: IndexPath) {
let currentCell:dateCollectionCell = collectionViews.cellForItem(at: indexPath) as! dateCollectionCell
currentCell.label.backgroundColor = .blue
}
// вот весь код
class hello: UIView,UICollectionViewDelegateFlowLayout,UICollectionViewDataSource {
func collectionView(_ collectionView: UICollectionView, numberOfItemsInSection section: Int) -> Int {
return 15
}
func collectionView(_ collectionView: UICollectionView, cellForItemAt indexPath: IndexPath) -> UICollectionViewCell {
let cell = collectionView.dequeueReusableCell(withReuseIdentifier: "cell", for: indexPath)
return cell
}
func collectionView(_ collectionView: UICollectionView, didSelectItemAt indexPath: IndexPath) {
let currentCell:dateCollectionCell = collectionViews.cellForItem(at: indexPath) as! dateCollectionCell
currentCell.label.backgroundColor = .blue
}
lazy var collectionViews: UICollectionView = {
let layout = UICollectionViewFlowLayout()
layout.minimumLineSpacing = 0
layout.minimumInteritemSpacing = 0
layout.sectionInset = UIEdgeInsetsMake(5,5,5,5)
layout.scrollDirection = UICollectionViewScrollDirection.vertical
let cv = UICollectionView(frame: .zero, collectionViewLayout: layout)
cv.showsVerticalScrollIndicator = false
cv.backgroundColor = UIColor.clear
cv.dataSource = self
cv.delegate = self
return cv
}()
override init(frame: CGRect) {
super.init(frame: frame)
setupViews()
}
func setupViews(){
backgroundColor = .red
collectionViews.register(warningCollectionCell.self, forCellWithReuseIdentifier: "cell")
collectionViews.translatesAutoresizingMaskIntoConstraints = false
addSubview(collectionViews)
collectionViews.topAnchor.constraint(equalTo: topAnchor, constant: 0).isActive = true
collectionViews.bottomAnchor.constraint(equalTo: bottomAnchor, constant: 0).isActive = true
collectionViews.centerYAnchor.constraint(equalTo: centerYAnchor, constant: 0).isActive = true
collectionViews.centerXAnchor.constraint(equalTo: centerXAnchor, constant: 0).isActive = true
collectionViews.widthAnchor.constraint(equalTo: widthAnchor, constant: 0).isActive = true
}
required init?(coder aDecoder: NSCoder) {
fatalError("init(coder:) has not been implemented")
}
}