
Target API 21 이상으로 설정한다.
private fun animateRainbow() { val anim = ValueAnimator.ofArgb( Color.RED, Color.YELLOW, Color.GREEN, Color.BLUE, Color.MAGENTA ).apply { duration = 1000 * 5 repeatCount = ValueAnimator.INFINITE repeatMode = ValueAnimator.REVERSE addUpdateListener { // tvRainbow가 TextView이다. binding.tvRainbow.setBackgroundColor(it.animatedValue as Int) } } anim.start() }
각 컬러 값들은 ContextCompat.getColor(context, R.color.blue)
식으로 colors.xml
에 정의되어있는 값으로 교체 할 수 있다.
'프로그래밍 > Android' 카테고리의 다른 글
[안드로이드] Kotlin에서 addOnGlobalLayoutListener 사용하기 (lambda에서 자신을 참조하는 법) (0) | 2021.05.26 |
---|---|
[안드로이드] 루팅 기기 체크하는 법 (Rooted device detection) (2) | 2021.04.17 |
[안드로이드] 앱이 버벅거리지 않게 하기 위해서 해야할 일 (0) | 2021.03.31 |
[안드로이드] V3 구글 인앱 결제 쉽게 구현하기 2021 - 정기결제 구독 상품편 (3) | 2021.03.22 |
[안드로이드] V3 구글 인앱 결제 쉽게 구현하기 2021 - 인앱 상품편 (21) | 2021.03.21 |