Проблема с анимацией перемещения изображения Android - PullRequest
0 голосов
/ 25 августа 2011

я использовал следующий код для анимации изображения, оно работает нормально, но при анимации изображение выглядит немного скачкообразным, а не плавно движущимся (выглядит как движущееся, но не совсем плавное. Оно останавливается на некоторое время) Может любой может найти проблемув коде?

 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);  
    }

1 Ответ

0 голосов
/ 25 августа 2011

Плавность вашей анимации будет зависеть от изменения координат и времени, в течение которого она остается на одной координате.Если вы хотите перемещать анимацию с той же скоростью, но немного более мягко, уменьшите время и единицы измерения на то же соотношение.

Например: ваш случай уменьшится на 50%.Это приведет к тому, что координаты x и y будут вычтены на 1, а время ожидания будет 15 мс.

Это может помочь , как анимировать растровые изображения

...