Skip to content

Instantly share code, notes, and snippets.

What would you like to do?
import Combine
import UIKit
final class ImageAnimator: ObservableObject {
private let scheduler: ImageFrameScheduler
init(imageURL: URL) {
self.scheduler = ImageFrameScheduler(url: imageURL)
@Published var image: CGImage?
func startAnimating() {
let isRunning = scheduler.start { [weak self] (index, image) in
self?.image = image
if isRunning == false {
print("Failed animate image at url \(scheduler.imageURL)")
func stopAnimating() {
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment