Xcode 11 Swift 5 Обновление метки в неосновной теме - PullRequest
0 голосов
/ 21 апреля 2020

Извиняюсь, если на этот вопрос ответили, но я пытался и с треском провалился, чтобы найти его.

Я очень плохо знаком с "настоящим" программированием, несмотря на долгую работу с "простыми" языками, такими как VB , VBA.

У меня есть функция, которая извлекает данные из URL, и я хочу обновить UILabel, когда она будет завершена. Я думаю, что я наконец-то понял, что такое асин c вызовы, и я подумал, что правильно делал вызов основного потока для обновления метки, но все равно получаю ошибку.

ошибка UILabel.text должен использоваться только из основного потока

getBGs { error in
        if let error = error {
            print("\(error) error occured")
        } else  {
            DispatchQueue.main.async {
                let today = Date()
                let formatter1 = DateFormatter()
                formatter1.dateFormat = "E d-MMM-yyyy hh:mm:ss"
                self.getBGsText.text = "Retrieved \(BGs?.count) at \(formatter1.string(from: today))"
            }
        }
    }
...