2014-12-01 3 views
-2

이미지보기가 왼쪽에서 오른쪽으로 움직이는 것을 보여주고 싶지만, 전체 경로의 중심에 도달하면 확대하고 다시 축소하여 나머지 경로를 완료해야합니다. 사람이 나를안드로이드 애니메이션의 해결책이 필요합니다.

+0

https://github.com/daimajia/AndroidViewAnimations –

+0

http://developer.android.com/guide/topics/graphics/overview.html – aga

답변

0

당신은 다음 단계를 따르 도와주세요 :

  • 하는 중심점 대신 전체 장치 너비 개까지 애니메이션을 번역.
  • 그런 다음 이미지 뷰를 확대/축소합니다.
  • 마지막으로 중심점에서 끝점으로 이동하십시오. 같은

뭔가는 다음과 같습니다 :이 도움이

i = (ImageView) findViewById(R.id.iv); 
final Animation tAnim1 = new TranslateAnimation(0.0f, 100.0f, 0.0f, 
     0.0f); //replace 100.0f according to device width 
tAnim1.setFillAfter(true); 
tAnim1.setRepeatCount(0); 
tAnim1.setDuration(5000); 
tAnim1.setInterpolator(new AccelerateDecelerateInterpolator()); 

final TranslateAnimation tAnim2 = new TranslateAnimation(100.0f, 
     200.0f, 0.0f, 0.0f);//replace 100.0f and 200.0f according to device width 
tAnim2.setFillAfter(true); 
tAnim2.setRepeatCount(0); 
tAnim2.setDuration(5000); 
tAnim2.setInterpolator(new AccelerateDecelerateInterpolator()); 

final Animation zAnim = new ScaleAnimation(1, 2, 1, 2, Animation.RELATIVE_TO_PARENT, Animation.RELATIVE_TO_PARENT); 
zAnim.setFillAfter(true); 
zAnim.setRepeatCount(1); 
zAnim.setRepeatMode(Animation.REVERSE); 
zAnim.setDuration(5000); 
zAnim.setInterpolator(new AccelerateDecelerateInterpolator()); 

i.setOnClickListener(new OnClickListener() { 

    @Override 
    public void onClick(View v) { 
     // TODO Auto-generated method stub 
     i.clearAnimation(); 
     i.startAnimation(tAnim1); 
    } 
}); 

tAnim1.setAnimationListener(new AnimationListener() { 

    @Override 
    public void onAnimationStart(Animation animation) { 
     // TODO Auto-generated method stub 

    } 

    @Override 
    public void onAnimationRepeat(Animation animation) { 
     // TODO Auto-generated method stub 

    } 

    @Override 
    public void onAnimationEnd(Animation animation) { 
     // TODO Auto-generated method stub 
     i.startAnimation(zAnim); 
    } 
}); 

zAnim.setAnimationListener(new AnimationListener() { 

    @Override 
    public void onAnimationStart(Animation animation) { 
     // TODO Auto-generated method stub 

    } 

    @Override 
    public void onAnimationRepeat(Animation animation) { 
     // TODO Auto-generated method stub 

    } 

    @Override 
    public void onAnimationEnd(Animation animation) { 
     // TODO Auto-generated method stub 
     i.startAnimation(tAnim2); 
    } 
}); 

희망을.

+0

코드 이미지에 따르면 감사합니다. 이미지가 오른쪽에서 왼쪽으로 이동 중입니다. 그런 다음 이전 위치로 다시 이동 한 다음 확대/축소 및 다시 이동합니다. 전체 경로의 중간에서 확대 및 축소해야한다는 요구 사항입니다. 나는 안드로이드를 처음 접했습니다. 도와주세요. –

+0

@SritamJagadev ya. 난 그것을 알아 챘다. 피벗 값을 조정하는 방법을 찾아야합니다. –

관련 문제