Skip to content

s2mr/Elephant

Folders and files

NameName
Last commit message
Last commit date

Latest commit

Jan 17, 2023
c6cb1d4 Â· Jan 17, 2023

History

48 Commits
Jan 17, 2023
Jan 17, 2023
Jan 17, 2023
Jan 17, 2023
Jan 17, 2023
Jan 17, 2023
Jan 17, 2023
Jan 17, 2023
May 23, 2019
Jan 17, 2023
Jan 17, 2023

Repository files navigation

Elephant

This is SVG animation presentation kit for iOS.

Swift5 Release CocoaPods Carthage
Platform Lincense

Example

You can run example app. Please open Example-iOS/Elephant-iOS.xcworkspace!

Usage

You can display the svg image with animation.

We are supportted two animation formats😎

The format is below.

  • Animation in SVG
  • Animation in CSS

Usage is difference by the format.

SVGView initialization

This is initialization SVGView for format 1 (Animation in SVG) usage.

SVGView(named: "svg-filename", animationOwner: .svg)

This is initialization SVGView for format 2 (Animation in CSS) usage.

SVGView(named: "svg-filename", animationOwner: .css, style: .cssFile(name: "css-filename"))

Show in your ViewController

And, you initialized view, you have to do is only add view to parent view, and start animation like below.

class ViewController: UIViewController {
    let svgView = SVGView(named: "image", animationOwner: .svg)

    override func viewDidLoad() {
        super.viewDidLoad()

        view.addSubview(svgView)
        svgView.translatesAutoresizingMaskIntoConstraints = false
        NSLayoutConstraint.activate([
            svgView.centerXAnchor.constraint(equalTo: view.centerXAnchor),
            svgView.centerYAnchor.constraint(equalTo: view.centerYAnchor),
            svgView.widthAnchor.constraint(equalToConstant: 400),
            svgView.heightAnchor.constraint(equalToConstant: 400),
        ])

        svgView.startAnimation()

        // svgView.stopAnimation()    // Stop animation.

        // svgView.isAnimate { [weak self] (value, error) in
        //     if let error = error {
        //         print(error)
        //     }
        //     guard let value = value else { return } // value means whether animation is moving.
        // }
    }
}

Requirements

  • Xcode 10.2
  • Swift 5.0

Installation

Add the following to the dependencies of your Package.swift:

dependencies: [
    .package(url: "https://github.com/s2mr/Elephant.git", from: "Elephant version"),
]

Add this to Podfile

pod 'Elephant'
$ pod install

Add this to Cartfile

github "s2mr/Elephant"
$ carthage update --platform ios

Author

Kazumasa Shimomura

License

Elephant is available under the Apache v2. See the LICENSE file for more info.

FOSSA Status