SwiftUI Image loading and Animation framework powered by SDWebImage
Go to file
DreamPiggy 875c813b39
Merge pull request #5 from SDWebImage/fix_carthage
Fix the Carthage compatible issue
2019-09-25 01:27:43 +08:00
.swiftpm/xcode/package.xcworkspace Add Swift Package Manager support 2019-08-09 16:06:53 +08:00
Example Support init with optional url 2019-09-12 19:19:23 +09:00
SDWebImageSwiftUI Merge pull request #2 from cozzin/optionalURL 2019-09-17 13:06:35 +08:00
SDWebImageSwiftUI.xcodeproj Fix the Carthage compatible issue 2019-09-25 01:26:52 +08:00
.gitignore Update the Travis-CI script 2019-08-09 16:25:52 +08:00
.travis.yml Fix the Travis-CI script 2019-08-09 16:32:05 +08:00
Cartfile Add the Xcode project to support Carthage. Fix the build issue on macOS/tvOS/watchOS 2019-08-09 15:58:21 +08:00
Cartfile.resolved Add the Xcode project to support Carthage. Fix the build issue on macOS/tvOS/watchOS 2019-08-09 15:58:21 +08:00
LICENSE Initial commit 2019-08-07 18:10:05 +08:00
Package.resolved Add Swift Package Manager support 2019-08-09 16:06:53 +08:00
Package.swift Add Swift Package Manager support 2019-08-09 16:06:53 +08:00
README.md Update readme to fix some typos 2019-08-09 18:29:29 +08:00
SDWebImageSwiftUI.podspec Update the information from personal repo to SDWebImage organization 2019-08-09 17:11:33 +08:00
_Pods.xcodeproj Initial commit 2019-08-07 18:10:05 +08:00

README.md

SDWebImageSwiftUI

CI Status Version License Platform Carthage compatible SwiftPM compatible

What's for

This is an experimental project for SDWebImage.

It aims to ensure the following function available for users and try to do some experiments for Swift platform.

  • Swift Package Manager integration
  • SwiftUI compatibility
  • Swift source code compatibility

Note we do not guarantee the public API stable for current status. Since Xcode 11 is not get released and SwiftUI is a new platform for us.

Requirements

  • Xcode 11+
  • iOS 13+
  • macOS 10.15+
  • tvOS 13+
  • watchOS 6+

Installation

CocoaPods

SDWebImageSwiftUI is available through CocoaPods. To install it, simply add the following line to your Podfile:

pod 'SDWebImageSwiftUI'

Carthage

SDWebImageSwiftUI is available through Carthage.

github "SDWebImage/SDWebImageSwiftUI"

Swift Package Manager

SDWebImageSwiftUI is available through Swift Package Manager.

let package = Package(
    dependencies: [
        .package(url: "https://github.com/SDWebImage/SDWebImageSwiftUI.git", from: "0.1")
    ],
)

Usage

  • Using WebImage to load network image

It supports the placeholder and detail options control for image loading as SDWebImage.

var body: some View {
    WebImage(url: URL(string: "https://nokiatech.github.io/heif/content/images/ski_jump_1440x960.heic")!)
        .scaledToFit()
        .frame(width: 300, height: 300, alignment: .center)
}
  • Using AnimatedImage to play animation
var body: some View {
    AnimatedImage(url: URL(string: "https://raw.githubusercontent.com/liyong03/YLGIFImage/master/YLGIFImageDemo/YLGIFImageDemo/joy.gif")!)
    AnimatedImage(data: try! Data(contentsOf: URL(fileURLWithPath: "/tmp/foo.webp")))
}

It supports both image url or image data for animated image format. Which use the SDWebImage's Animated ImageView for internal implementation.

Demo

To run the example using SwiftUI, following the steps:

cd Example
pod install

Then open the Xcode Workspace to run the demo application.

Screenshot

Author

DreamPiggy

License

SDWebImageSwiftUI is available under the MIT license. See the LICENSE file for more info.