Android

[android] ObjectAnimator 에니메이션 효과 주는 방법

RecyclerView 또는 ListView에 애니메이션을 효과를 주고 싶을 때 아주 간단하게 해결 할 수 있는 방법이 있습니다.

ObjectAnimator 에니메이션 효과 주는 방법

ObjectAnimator 클래스를 이용하여 간단하게 리스트를 반짝 하고 바로 나오는게 아니라 알파값으로 Fade 효과를 줄 수 있습니다.

ObjectAnimator.ofFloat(contentView, "alpha", 0.0f, 1f).start();

contentView는 Adapter에서 getView() 메소드 혹은 instatntiateItem() 메소드에서 전체 View로 할당해놓으면 편합니다.

ObjectAnimator는 ValueAnimator(이전 섹션에서 설명함)의 서브클래스이고 타이밍 엔진과 ValueAnimator의 값 계산을 조합하며 타겟 객체의 이름 지정된 속성을 애니메이션화하는 기능이 있습니다. 그러면 애니메이션 속성이 자동으로 업데이트되므로 더 이상 ValueAnimator.AnimatorUpdateListener를 구현할 필요가 없기 때문에 객체를 애니메이션으로 보여주기가 훨씬 쉬워집니다. ObjectAnimator를 인스턴스화하는 작업은 ValueAnimator와 비슷하지만 애니메이션할 값 범위와 함께 객체와 객체의 속성 이름(문자열)도 지정합니다.

ObjectAnimator animation = ObjectAnimator.ofFloat(textView, "translationX", 100f);
    animation.setDuration(1000);
    animation.start();

[참고]
속성 애니메이션 개요

https://developer.android.com/reference/android/animation/ObjectAnimator

https://github.com/android/animation-samples/tree/master/CustomTransition

https://www.crocus.co.kr/1671

https://blog.naver.com/PostView.nhn?blogId=tkddlf4209&logNo=221638722158&categoryNo=41&parentCategoryNo=0&viewDate=¤tPage=1&postListTopCurrentPage=1&from=search

https://wikidocs.net/19540

https://stackoverrun.com/ko/q/11895605

Leave a Reply

error: Content is protected !!