Обновить загрузку изображения пользовательского интерфейса и пользовательского интерфейса с URL-адреса в ios SwiftIOS

Программируем под IOS
Ответить Пред. темаСлед. тема
Anonymous
 Обновить загрузку изображения пользовательского интерфейса и пользовательского интерфейса с URL-адреса в ios Swift

Сообщение Anonymous »

Привет всем младшим разработчикам! Я получаю данные с сервера в фоновом потоке и обновляю пользовательский интерфейс в основном потоке, это работает, но у меня также есть отдельный загрузчик изображений пользовательского интерфейса из URL-адреса здесь:

Код: Выделить всё

extension UIImageView {
func load(url: String) {
guard let urlString = URL(string: url) else {return}
DispatchQueue.global(qos: .background).async { [weak self] in
if let data = try? Data(contentsOf: urlString) {
if let image = UIImage(data: data) {
DispatchQueue.main.async {
self?.image = image
}
}
}
}
}
}
Но когда на открытом экране работает первый загрузчик изображений, указанный выше, и приложение зависает на несколько секунд, а затем обновляется основной пользовательский интерфейс (uiviews), оба пользовательских интерфейса обновляются в основном потоке. Как я могу сделать так, чтобы загрузка изображения в основной поток не блокировала обновление uiview? Я хочу, чтобы это было так: пользовательский интерфейс обновляется и работает, затем, когда изображение загружается, оно не должно блокировать основные обновления пользовательского интерфейса.
Дополнительная информация: использование объединения для получения данных и uikit для дизайна.
Заранее спасибо !

Подробнее здесь: https://stackoverflow.com/questions/785 ... -ios-swift
Реклама
Ответить Пред. темаСлед. тема

Быстрый ответ

Изменение регистра текста: 
Смайлики
:) :( :oops: :roll: :wink: :muza: :clever: :sorry: :angel: :read: *x)
Ещё смайлики…
   
К этому ответу прикреплено по крайней мере одно вложение.

Если вы не хотите добавлять вложения, оставьте поля пустыми.

Максимально разрешённый размер вложения: 15 МБ.

  • Похожие темы
    Ответы
    Просмотры
    Последнее сообщение

Вернуться в «IOS»