😍

SwiftUIでLottieFilesを使ってみた

2024/12/12に公開

🤔やってみたいこと

最近あれはどうやって作っているのだろうっていうアニメーションがLottieFilesではないかと思った。この記事を見て気づいた!

https://zenn.dev/minn/articles/adocale-2024

「くそか。。。」いや素敵すぎるアプリですね😍

早速参考にさせてもらっちゃうもんね🐈

🚀やってみたこと

俺ちゃんは早速技術調査して公式サイトを見つてけて対応してる技術を調べてみた。
https://lottiefiles.com/jp/runtimes

対応している技術

  • JavaScript
  • React
  • Vue.js
  • Svelte
  • SwiftUI
  • Android xmlの方

対応している技術は限定されていそう。FlutterとReactNativeでは使えなさそう?
ReactNativeは無理だった😇

SwiftUIの経験が俺ちゃんはあるので試してみる。
https://developers.lottiefiles.com/docs/dotlottie-player/dotlottie-ios/

パッケージを追加すると時間がかかるのが悩み😅
キャンセルしてまたやり直すと時間削減できた?
でもホワイトハウスを追加しないとダメみたい?




ここから素材を入手する。
https://lottiefiles.com/jp/featured-free-animations
回る猫ちゃんをゲット!


ワークスペースとやらに保存する必要があるらしい。
jsonファイルでダウンロードする。ファイル名は後でcat.jsonに変更して、SwiftUIのプロジェクト直下に配置した。



example

import DotLottieでモジュールを読み込む設定をして公式のサンプルをそのまま追加すれば素敵なアニメーションが作れます。

import SwiftUI
import DotLottie

struct ContentView: View {
    var body: some View {
        AnimationView()
    }
}

struct AnimationView: View {
    var body: some View {
        DotLottieAnimation(
            fileName: "cat",
            config: AnimationConfig(
                autoplay: true,
                loop: true,
                speed: 1.0
            )
        )
        .view()
        .frame(width: 200, height: 200)
    }
}

#Preview {
    ContentView()
}

可愛いですね💙💚
https://youtube.com/shorts/6LF4v7cQMac

🙂最後に

友人は動くgif画像を個人アプリに使っていたりしましたが、LottieFilesを使うとまた違った世界を体験できるかもしれません。

ああFlutterにも対応したパッケージあったわwww
https://pub.dev/packages/lottie

ReactNativeでも使う方法はあるようだな。。。
https://github.com/lottie-react-native/lottie-react-native
https://docs.expo.dev/versions/latest/sdk/lottie/

動いた....

iOS

Android

Discussion