Skip to content
forked from leoz/CachedImage

Asynchronous Image Loading from URL in SwiftUI

License

Notifications You must be signed in to change notification settings

brysn/CachedImage

 
 

Repository files navigation

CachedImage

Build License

🔭 Overview

CachedImage is a SwiftUI component to asynchronously load and display an image provided by its URL.

This package is based on the AsyncImage project published by Vadim Bulavin and described in the Asynchronous Image Loading from URL in SwiftUI article.

🛠️ Usage

Quick Start

import CachedImage

let images = (0...20).map {
    "https://picsum.photos/800/600?random=\($0)"
}
let imageURLs = images.map {
    URL(string: $0)!
}

struct ContentView: View {
    var body: some View {
        List(imageURLs, id: \.self) { url in
            CachedImage(
                url: url,
                content: { image in
                    image
                        .resizable()
                        .aspectRatio(contentMode: .fit)
                },
                placeholder: {
                    Text("Loading ...")
                }
            )
            .scaledToFit()
        }
    }
}

Demo Program

Check the demo project provided here: Demo.

✍️ Author

Vadim Bulavin & Leonid Zolotarev

📃 License

CachedImage is available under the Unlicense. See the LICENSE file for more info.

About

Asynchronous Image Loading from URL in SwiftUI

Resources

License

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Swift 100.0%