Ошибка: {Для моментального снимка представления (0x7fb2c07544d0, _UIReplicantView), которое не было обработано хотя бы один раз, требуется afterScreenUpdates: YES} в Swift 5? - PullRequest
1 голос
/ 22 апреля 2020

Я столкнулся с проблемой с блоком кода, который изменяет внешний вид UIButton .

Функция checkInputs() вызывается TextField Delegate всякий раз, когда текст внутри текстового поля отредактирован .

funk checkInputs() {
    var errorCounter = 0

    // Some if statements to check the inputs and increase errorCounter whenever the input is not accepted.

    if errorCounter == 0 {
        btnContinue.isEnabled = true
        btnContinue.backgroundColor = UIColor.orange
        btnContinue.titleLabel?.textColor = UIColor.black
    } else {
        btnContinue.isEnabled = false
        btnContinue.backgroundColor = UIColor.systemGray2
        btnContinue.titleLabel?.textColor = UIColor.label
    }
}

Для меня это выглядит как кусок кода, где никакие ошибки не могут скрыться, однако Я получаю довольно редкую ошибку при каждом изменении I текст моего text field.

[Snapshotting] Snapshotting a view (0x7fb2c05348d0, _UIReplicantView) that has not been rendered at least once requires afterScreenUpdates:YES.

В дополнение к этому сообщению об ошибке поведение кода также отличается от того, что я ожидал . enabled / disabled command все время работают так же, как background color command. Только title.textColor command работает неправильно.

При первом правильном вводе , только изменение enabled property и background property, titleColor property остается как это было Только когда я снова редактирую входы, и все входы по-прежнему остаются git, titleColor property также изменяется.

Я надеюсь, что вы, ребята, что-то знаете об этом Я не знаю и могу помочь мне с этим вопросом.

Спасибо за вашу помощь заранее.

...