It is a library developed to make Lottie easy to implement. It supports iOS and macOS.
https://user-images.githubusercontent.com/1617304/153740565-52e8fb67-c548-4124-a803-fa75c287cd6d.mp4
https://fabulaapp.page.link/225
LUStateData examples.
/// Loads an animation model from a bundle by its name.
let state1 = LUStateData(type: .name("bubble1"), loopMode: .loop)
/// Loads a Lottie animation asynchronously from the URL.
let state2 = LUStateData(type: .loadedFrom(URL(string: "https://assets9.lottiefiles.com/packages/lf20_mniampqn.json")!), speed: 1.0, loopMode: .loop)
/// Loads an animation from a specific filepath.
let state3 = LUStateData(type: .filepath("/Users/jasu/Downloads/bubble2.json"), speed: 1.0, loopMode: .loop)
How to use LottieView.
/// 1
LottieView(state: state1)
...
/// 2
LottieView(state: state1, onCompleted: { success in
print("Completed")
}, onDownloaded: { success in
print("Downloaded")
})
...
/// 3
VStack {
LottieView(state: state1, value: value, onCompleted: { success in
print("Completed")
}, onDownloaded: { success in
print("Downloaded")
})
Slider(value: $value, in: 0...1)
}
The Swift Package Manager is a tool for automating the distribution of Swift code and is integrated into the swift compiler. Once you have your Swift package set up, adding LottieUI as a dependency is as easy as adding it to the dependencies value of your Package.swift.
dependencies: [
.package(url: "https://github.com/jasudev/LottieUI.git", .branch("main"))
]
instagram : @dev.fabula
email : dev.fabula@gmail.com
LottieUI is available under the MIT license. See the LICENSE file for more info.