개발/Android
[프로젝트] 3,4일차 - 원판 멈출 때 위치 받기
레란희
2021. 9. 14. 20:47
val animation: ObjectAnimator = ObjectAnimator.ofFloat(this, "rotation", degree)
animation.apply {
duration = getRollDuration()
interpolator = DecelerateInterpolator()
addListener(object: Animator.AnimatorListener {
override fun onAnimationStart(p0: Animator?) {
}
override fun onAnimationEnd(p0: Animator?) {
var degree = rotation%360
var sweep = 360 / PAINTS.size
var position = PAINTS.size-1 - (degree/sweep).toInt();
listener?.onRouletteStop(position)
}
override fun onAnimationCancel(p0: Animator?) {
}
override fun onAnimationRepeat(p0: Animator?) {
}
})
}
animation.start()
코드는 네 줄인데 이틀이나 잡아먹었다.
돌아간만큼 - 된다고 생각하고 해당하는 각도의 위치를 계산하였더니 된다.
다 써놓고 하는 말이지만 이거를 포스팅으로 써도 될지 확신이 들지 않았다.
하루 삽질하고 오늘 퇴근하면서 주차장에서 번쩍 생각이 들어서 해봤더니.. 어라 되네??
그래서 내가 이해하고 만든 게 아닌...? 근데 결과는 잘 나오는...? 그런 코드라..
그냥 '어 이러면 될 거 같은데?' 했더니 되버린.. 그런 코드다 ㅜㅜ
(하루아침에 이랬나 코딩&디버깅의 대부분이 '엥 혹시?ㅋㅋ'로 때려맞추는 나란 여자..)