Sobes.tech
Junior — Middle

Hogyan lehet programozottan letölteni egy képet az interneten található linkről?

sobes.tech MI

Válasz az MI-től

Az iOS rendszerben az URL-ről történő kép betöltéséhez használhatja a URLSession osztályt hálózati kérés végrehajtására és az adatok beszerzésére, majd az így kapott adatokból UIImage-t hozhat létre. Itt egy egyszerű példa Swift-ben:

import UIKit

func downloadImage(from urlString: String, completion: @escaping (UIImage?) -> Void) {
    guard let url = URL(string: urlString) else {
        completion(nil)
        return
    }
    URLSession.shared.dataTask(with: url) { data, response, error in
        guard let data = data, error == nil else {
            completion(nil)
            return
        }
        let image = UIImage(data: data)
        DispatchQueue.main.async {
            completion(image)
        }
    }.resume()
}

// Használat:
downloadImage(from: "https://example.com/image.jpg") { image in
    if let img = image {
        // Használja az img-t, például UIImageView-hez rendelve
    } else {
        print("Nem sikerült betölteni a képet")
    }
}

Ez a kód aszinkron módon tölti le a képet, és egy záradék segítségével adja vissza.