🦄 Limited offer — get lifetime access:$75$60
Rive.rivLottie.json

Animated Icons for Android / Kotlin

Both Rive and Lottie have first-class Android support via Gradle. Rive's RiveAnimationView renders .riv files with full state machine support for interactive animations in XML layouts or Jetpack Compose. Lottie's LottieAnimationView handles JSON playback from res/raw/ with simple play/pause control.

Animated icons

View all icons →

Browse by category

Animated icons across 24 categories, all available in Rive and Lottie formats.

Rive integration

Rive icons include interactive state machines for hover and click — no extra animation code required. GPU-accelerated with smaller file sizes than Lottie.

1

Install app.rive:rive-android

// app/build.gradle
dependencies {
    implementation "app.rive:rive-android:9.0.0"
}
2

Add the animation

<!-- res/layout/activity_main.xml -->
<app.rive.runtime.kotlin.RiveAnimationView
    android:layout_width="64dp"
    android:layout_height="64dp"
    app:riveResource="@raw/your_icon"
    app:riveStateMachineName="State Machine 1"
    app:riveAutoPlay="true" />

Lottie integration

Use Lottie for simple playback-only animations or when integrating with existing Lottie-based tooling.

1

Install com.airbnb.android:lottie

// app/build.gradle
dependencies {
    implementation "com.airbnb.android:lottie:6.4.0"
}
2

Add the animation

<!-- res/layout/activity_main.xml -->
<com.airbnb.lottie.LottieAnimationView
    android:layout_width="64dp"
    android:layout_height="64dp"
    app:lottie_rawRes="@raw/your_icon"
    app:lottie_autoPlay="true"
    app:lottie_loop="true" />

Other platforms