2011-08-25 9 views
0

다음 코드를 사용하여 이미지를 움직이게해도 잘 동작하지만 이미지가 움직이는 동안 부드럽게 움직이는 것이 아니라 점프하는 것처럼 보입니다. (움직이는 것처럼 보이지만 부드럽게 보이지 않습니다. 어떤 사람이 코드에서 문제를 발견합니까?안드로이드 이미지 움직이는 애니메이션 문제

class AnimationLoop implements Runnable 
{ 
     public void run() 
    { 
     while(true) 
     { 
      while(running) 
      {       
       try 
       { 

        Thread.sleep(30); 

       } 
       catch(InterruptedException ex) {} 
     } 
    } 
    counter+=1; 
    updatePosition(0); 
    main.postInvalidate(); //main is type panel 

} 
private synchronized void updatePosition(int index) { 
     mYPositions[index]-=2;   // animate from bottom to top 
     mXPositions[index]-=2; 
} 


    @Override 
    protected void onDraw(Canvas canvas) 
    { 

      canvas.drawBitmap(balloonSet.get(0), mXPositions[0], mYPositions[0],null); 
    } 

답변

0

애니메이션의 부드러움 좌표의 변화와 그 좌표를 단일로 유지되는 시간에 따라 달라집니다. 애니메이션을 같은 속도로 움직이긴하지만 약간 부드럽게 움직이려면 같은 비율로 시간과 단위 변경을 줄이십시오.

예 : 사례가 50 % 감소합니다. 그러면 x와 y 위치가 1 씩 감소하고 수면 시간은 15ms가됩니다.

+0

how to animate bitmaps 여전히 내가 .. 그 같은 점프 ... – vnshetty

+0

내가 대답에 링크를 추가 한 볼 수 있습니다 도움이 될 수 있습니다. 희망이 도움이됩니다. – Ronnie

관련 문제