Попробуйте приведенный ниже код, может помочь вам
extension UIView{
func addGradientBackground(firstColor: UIColor, secondColor: UIColor){
clipsToBounds = true
let gradientLayer = CAGradientLayer()
gradientLayer.colors = [firstColor.cgColor, secondColor.cgColor]
gradientLayer.frame = self.bounds
gradientLayer.startPoint = CGPoint(x: 0, y: 0)
gradientLayer.endPoint = CGPoint(x: 0, y: 1)
print(gradientLayer.frame)
self.layer.insertSublayer(gradientLayer, at: 0)
}
}
А внутри вашей клетки просто:
override func awakeFromNib() {
super.awakeFromNib()
DispatchQueue.main.async {
self.addGradientBackground(firstColor: .green, secondColor: .blue)
}
}
Добавить эту строку только в Xib-файл, в противном случае при перезагрузке ячейки добавить несколько градиентов в ячейку self.addGradientBackground (firstColor: .green, secondColor: .blue)
Справочник - Как сделать так, чтобы у клеток был градиентный фон?