2012-04-12 5 views
0

translateAnimation을 imageview에 구현합니다.이미지를 translateanimation on android

성공적으로 애니메이트되었습니다.

하나의 번역이 위로 이동하고 다른 번역이 아래로 이동합니다. 두 번째 번역을 시작할 때 이미지를 변경해야합니다.

내 코드는 다음과 같습니다

<?xml version="1.0" encoding="utf-8"?><set xmlns:android="http://schemas.android.com/apk/res/android" 
android:interpolator="@android:anim/accelerate_decelerate_interpolator" 
android:shareInterpolator="true"> 
<translate 
    android:fromXDelta="0%" android:toXDelta="0%p" 
    android:fromYDelta="0%" android:toYDelta="20%" 
    android:drawable="@drawable/bs_bunny1" 
    android:duration="2000" android:startOffset="100"/> 
<translate 

    android:fromXDelta="0%" android:toXDelta="0%p" 
    android:fromYDelta="0%p" android:toYDelta="-20%p" 
    android:duration="3000" android:startOffset="100"/></set> 

내가 이미지 뷰에 위의 애니메이션을 설정합니다.

하지만 두 번째 번역을로드하기 시작하면 이미지를 변경하고 싶습니다. 어떻게해야합니까?

+0

가 이동하고 한 번에 작동합니다 아래로 이동? – Abhi

답변

1

두 개의 애니메이션으로 분해하고 Animation.AnimationListener를 첫 번째 변환 애니메이션에 등록해야합니다. Animation.AnimationListener의 onAnimationEnd (애니메이션 애니메이션) 콜백에서 이미지 변화를하고 다음과 같은 따라서, 두 번째 애니메이션을 시작합니다

translate.setAnimationListener(new Animation.AnimationListener() { 

@Override 
public void onAnimationStart(Animation animation) { 
} 

@Override 
public void onAnimationEnd(Animation animation) { 
    view.setImageResource(resId); 
    view.startAnimation(translate2); 
} 

@Override 
public void onAnimationRepeat(Animation animation) { 
} 
});