Я использую UITableViewCell.xib для настройки ячейки. Я отображаю текст и картинки, вид добавлен на фоне ячеек. Всего 7 ячеек, и в одной ячейке мне нужно заменить этот фон другим UIView.xib. Я пытался реализовать это, но это не дало мне результатов, фон на всех ячейках одинаков. Или как я могу изменить свойство ячейки фонового представления на свой View.xib
CollectionCell.swift
import UIKit
class CollectionViewCell: UICollectionViewCell {
static var identifier: String = "CollectionViewCell"
@IBOutlet weak var icon: UIImageView!
@IBOutlet weak var titleLabel: UILabel!
@IBOutlet weak var customBackgoundView: UIView!
override func awakeFromNib() {
super.awakeFromNib()
// Initialization code
}
}
CustomeView.swift
import UIKit
class CustomBackgroundView: UIView {
@IBOutlet weak var contentView:UIView!
//MARK: Override
override init(frame: CGRect) {
super.init(frame: frame)
commonInit()
}
required init?(coder aDecoder: NSCoder) {
super.init(coder: aDecoder)
commonInit()
}
private func commonInit() {
Bundle.main.loadNibNamed("CustomBackgroundView", owner: self, options: nil)
addSubview(contentView)
contentView.frame = self.bounds
}
}
CollectionView.swift let background = CustomBackgroundView ()
func collectionView(_ collectionView: UICollectionView, cellForItemAt indexPath: IndexPath) -> UICollectionViewCell {
let cell = collectionView.dequeueReusableCell(withReuseIdentifier: CollectionViewCell.identifier, for: indexPath) as? CollectionViewCell
// here i'm doing something wrong because nothing changes
if indexPath.row == 3 {
cell?.customBackgoundView = background
cell?.contentView.addSubview(background)
}
return cell ?? UICollectionViewCell()
}