+7 771 559 26 76

facebook vk instagram Одноклассники youtube

Загрузка изображений из сети (Download Images for Tableview or CollectionView) - Swift 5


// Класс в котором будет выполняться загрузка изображений
import UIKit
class ImageLoader {

static func DownloadImage(withURL url : URL, complition : _ image : UIImage -> ()) {

let dataTask = URLSession.shared.dataTask(with: url) {data, urlData, error1 in

// Картинка по умолчанию!
let defImage = UIImage(named: "RedRose.jpg")!
var downloadImage : UIImage?

if let data = data {
downloadImage = UIImage(data: data)
}

if downloadImage != nil {
print("Success DownLoad Image")
} else {
print("Error download Image")
}

DispatchQueue.main.async {
complition(downloadImage ?? defImage)
}
}
dataTask.resume()
}
}



Использование

override func tableView(_ tableView: UITableView, cellForRowAt indexPath: IndexPath) -> UITableViewCell {
let cell = tableView.dequeueReusableCell(withIdentifier: "cell", for: indexPath)

// Заменить на массив!
let imageURL = URL(string: "www.png")

// ImageLoader - название класса!
ImageLoader.DownloadImage(withURL: imageURL!) { (lodedImg) in
cell.imgFlower.image = lodedImg
}
}

Возврат к списку

обучись профессии будущего

Хочешь стать успешным разработчиком
приложений? Тогда добро пожаловать к нам.

обучись профессии будущего