https://csjung.tistory.com/176
- 점점빠르게 : accelerate_interpolator
- 점점 느리게 이동 : decelerate_interpolator
- 위 둘을 동시에 : accelerate_decelerate_interpolator
- 시작위치에서 조금 뒤로 당겼다 이동 : anticipate_interpolator
- 도착위치를 조금 지나쳤다가 도착위치로 이동 : overshoot_interpolator
- 위 둘을 동시에 : anticipate_overshoot_interpolator
- 도착위치에서 튕김 : bounce_interpolator
interpolator: 에니메이션이 일어나는 동안의 횟수,속도를 조절하거나 시작과 종료시의
효과를 추가 할 수 있다.
예 ) 점점 빨라지는 에니메이션, 종료시 스프링처럼 바운딩 되는 에니메이션 등..
보통 안드로이드에 이미 정의되어 있는 "@android:anim/..." interpolator를 사용하나
특정 값은 변경할 수 있다.
예 ) 에니메이션 횟수 : res/anim/cycle_test.xml
<cycleInterpolator xmlns:android="http://schemas.android.com/apk/res/android"
roid:cycles="7" />
구글 샘플 프로젝트
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
Designed by sketchbooks.co.kr / sketchbook5 board skin
Sketchbook5, 스케치북5
Sketchbook5, 스케치북5
Sketchbook5, 스케치북5
Sketchbook5, 스케치북5