안드로이드 Lottie 적용
Lottie 애니메이션
Lottie는 Json으로 이루어진 애니메이션이다.
gif보다 용량이 적어서 부담이 적다.
실제로 사용해본 결과 처음은 불편했지만, 디자이너님과 서로서로 훨씬 수월해지는 작업이었다.
앞으로 Lottie 사용이 더 늘어날 것 같다.
그냥 이미지를 사용했을 때 보다 역시 애니메이션이 이쁘다..!
실제로 LottieFile들이 올라간 사이트를 구경하다보면 눈에 확 들어오는 애니메이션들이 많았다.
Lottie에 쓰일 이미지는 로티파일 에 들어가면 아주 많이 나와있다. 꼭 한 번 둘러보시길 !
Lottie 사용
API 14 이상의 안드로이드 버전이 필요
gradle에 implementation 'com.airbnb.android:lottie:$lottieVersion' 삽입
lottieVersion이 2.8이상이어야 androidx에 대응 가능
출처 https://github.com/airbnb/lottie-android
1) src/main/assets 폴더에 LottieFile명.json 넣기
2) xml에 com.airbnb.lottie.LottieAnimationView 생성
<com.airbnb.lottie.LottieAnimationView
android:id="@+id/lottie"
android:layout_width="match_parent"
android:layout_height="wrap_content"
android:layout_marginBottom="10dp"
app:layout_constraintBottom_toBottomOf="parent"
app:layout_constraintEnd_toEndOf="parent"
app:layout_constraintLeft_toLeftOf="parent"
app:layout_constraintRight_toRightOf="parent"
app:layout_constraintStart_toStartOf="parent"
app:lottie_autoPlay="true"
app:lottie_loop="true"
app:lottie_speed="1"/>
app:lottie_autoPlay | 자동으로 플레이 할지 결정 |
app:lottie_loop | Lottie를 반복해서 재생할지 결정 |
app:lottie_speed | Lottie의 속도 결정 |
3) LottieView에 애니메이션 적용
- LottiView.setAnimaion(json파일명)
- LottiView.playAnimation() : 애니메이션 시작
- LottiView.pauseAnimation() : 애니메이션 중지
- LottiView.setScale(float) : 애니메이션 scale up, down
- LottiView.setProgress : 애니메이션 progress조절
- 이 외에도 로티를 조절하기 편한 함수들이 꽤 있으니 로티Doc를 확인하면 도움될 함수가 많다.
'📱 Android' 카테고리의 다른 글
[Android/kotlin] 시스템 폰트 크기에 영향받지 않게 하기 (1) | 2020.07.27 |
---|---|
[Android] MPAndroidChart BarChart 사용하기 (0) | 2020.05.17 |
[Android / Kotlin] Custom SeekBar (0) | 2019.11.15 |
[MPAndroidChart/kotlin] BarChart 여러 개의 Bar (GroupBar) (0) | 2019.10.18 |
[Android / Kotlin] TextView 취소선 표시 및 해제 (0) | 2019.10.01 |