Динамически обрабатывать цвета фона и переднего плана внутри элементов UICollectionViewCell - PullRequest
0 голосов
/ 18 июня 2019

У меня есть UICollectionViewCell, который содержит UIView, включающий UILabel.Я должен изменить цвет фона UIView и цвет текста UILabel на основе логического значения.Цвета на основе работы с логическим значением найдите, если я не добавлю четвертый элемент в UICollectionView.Все элементы из всех предыдущих и текущих ячеек приобретают тот же соответствующий цвет, что и элементы четвертой ячейки, как только я добавляю четвертый элемент.

Проблема в точности связана с этим но здесь я не могу добавить цвета в методе init для UICollectionViewCell, а затем активировать / деактивировать их в cellForRowAt на основе логического значения.Что я мог сделать, чтобы решить эту проблему?

1 Ответ

0 голосов
/ 18 июня 2019

Сброс colors из UIView и UILabel в prepareForReuse() по вашему выбору UICollectionViewCell.

Пример:

class CustomCell: UICollectionViewCell {
    @IBOutlet weak var customView: UIView!
    @IBOutlet weak var label: UILabel!

    override func prepareForReuse() {
        super.prepareForReuse()

        //reset the colors here.........
        customView.backgroundColor = .white
        label.textColor = .black
    }
}
...