
Featured animations from our community
Lottie 사이트에서 원하는 애니메이션을 선택 후, json 파일을 다운로드 해줍니다.
다운받은 json 파일은 res에서 raw 폴더를 만들어 안에 넣어줍니다.

Lottie 문서에서 나온대로 build.gradle을 설정해줍니다. 밑의 코드는 splashscreen 코드입니다.
//splash
implementation ("com.airbnb.android:lottie:6.4.0") //Lottie
implementation("androidx.core:core-splashscreen:1.0.0")
SplachActivity 코드 Coroutine을 사용하여 딜레이 조절했습니다.
import android.content.Intent
import android.os.Bundle
import androidx.activity.enableEdgeToEdge
import androidx.appcompat.app.AppCompatActivity
import kotlinx.coroutines.CoroutineScope
import kotlinx.coroutines.Dispatchers
import kotlinx.coroutines.cancel
import kotlinx.coroutines.delay
import kotlinx.coroutines.launch
class SplashActivity : AppCompatActivity() {
val activityScope = CoroutineScope(Dispatchers.Main)
override fun onCreate(savedInstanceState: Bundle?) {
super.onCreate(savedInstanceState)
enableEdgeToEdge()
setContentView(R.layout.activity_splash)
activityScope.launch {
delay(3930)
var intent = Intent(this@SplashActivity, MainActivity::class.java)
startActivity(intent)
finish()
}
}
override fun onPause() {
activityScope.cancel()
super.onPause()
}
}
AndroidManifest.xml 설정을 해줍니다. intent-filter를 SplashActivity에 넣어 SplashActivity가 가장 먼저 실행되도록 해줍니다.
<activity
android:name=".SplashActivity"
android:exported="true">
<intent-filter>
<action android:name="android.intent.action.MAIN" />
<category android:name="android.intent.category.LAUNCHER" />
</intent-filter>
</activity>
activity_splash.xml에 LottieAnimationView를 넣어줍니다. @raw/{다운받은 lottie파일명}으로 작성해줍니다.
<?xml version="1.0" encoding="utf-8"?>
<androidx.constraintlayout.widget.ConstraintLayout xmlns:android="http://schemas.android.com/apk/res/android"
xmlns:app="http://schemas.android.com/apk/res-auto"
xmlns:tools="http://schemas.android.com/tools"
android:id="@+id/main"
android:layout_width="match_parent"
android:layout_height="match_parent"
tools:context=".SplashActivity">
<com.airbnb.lottie.LottieAnimationView
android:layout_width="match_parent"
android:layout_height="match_parent"
app:lottie_autoPlay="true"
app:lottie_loop="true"
app:lottie_rawRes="@raw/runaway_splash_animation"/>
</androidx.constraintlayout.widget.ConstraintLayout>
drawable에서 launch_transparent.xml을 만들어줍니다. item태그로 기본으로 제공되는 스플래시 화면을 투명하게 만듭니다.
<?xml version="1.0" encoding="utf-8"?>
<selector xmlns:android="http://schemas.android.com/apk/res/android">
<item android:color="@android:color/transparent"/>
</selector>
<style name="Base.Theme.RunAway" parent="Theme.Material3.DayNight.NoActionBar">
<item name="editTextBackground">@drawable/launch_transparent</item>
<item name="android:windowIsTranslucent">true</item>
</style>
