RamaFam
Animation 에서의 interpolator 본문
구글 샘플 프로젝트
animation > interpolators
텍스트 뷰를 좌에서 우로 에니메이션 시키는 예제..
1. 레이아웃중 에니메이션 시킬 뷰와 부모 뷰를 얻는다.
final View target = findViewById( R.id.target );
final View parent = (View) target.getParent();
2. 이동 에니메이션 객체를 생성한다.
Animation a = new TranslateAnimation(0.0f,
parent.getWidth() - target.getWidth() - parent.getPaddingLeft() - parent.getPaddingRight(), 0.0f, 0.0f);
//에니메이션 설정
a.setDuration(1000);
a.setStartOffset(300);
a.setRepeatMode(Animation.RESTART);
a.setRepeatCount(Animation.INFINITE);
3. 에니메이션별 interpolator 설정
미리 정의된 안드로이드 에니메이션 설정을 얻는다.
a.setInterpolator( AnimationUtils.loadInterpolator( this, android.R.anim.식별자) );
- 점점빠르게 : accelerate_interpolator
- 점점 느리게 이동 : decelerate_interpolator
- 위 둘을 동시에 : accelerate_decelerate_interpolator
- 시작위치에서 조금 뒤로 당겼다 이동 : anticipate_interpolator
- 도착위치를 조금 지나쳤다가 도착위치로 이동 : overshoot_interpolator
- 위 둘을 동시에 : anticipate_overshoot_interpolator
- 도착위치에서 튕김 : bounce_interpolator
출처: http://csjung.tistory.com/176 [짱수의 스토리 창고]