live wallpaper com imagens

(desculpe pelo meu inglês não é tão bom ... espero que você me entenda)

Meu amigo é realmente uma boa gaveta. Eu gostaria de ajudá-lo a ser conhecido como uma boa gaveta, transformando-o em um papel de parede animado com seus desenhos.

Gostaria que ele desenhasse alguns quadros e os usasse para criar um papel de parede ao vivo, exibindo-os um após o outr

Estou me esforçando muito para exibir uma foto, aguarde um pouco e mostre a próxima. Tenho certeza de que não posso fazer isso porque não uso a abordagem correta ...

Isso é o que tenho feito até agora:

public class Cercle extends WallpaperService
{
public void onCreate() 
{
    super.onCreate();
}

public void onDestroy() 
{
    super.onDestroy();
}

public Engine onCreateEngine() 
{
    return new CercleEngine();
}

class CercleEngine extends Engine 
{
    public Bitmap image1, image2, image3;

    CercleEngine() 
    {       
        image1 = BitmapFactory.decodeResource(getResources(), R.drawable.img1);
        image2 = BitmapFactory.decodeResource(getResources(), R.drawable.img2);
        image3 = BitmapFactory.decodeResource(getResources(), R.drawable.img3); 
    }

    public void onCreate(SurfaceHolder surfaceHolder) 
    {
        super.onCreate(surfaceHolder);
    }

    public void onOffsetsChanged(float xOffset, float yOffset, float xStep, float yStep, int xPixels, int yPixels) 
    {
        drawFrame();
    }

    void drawFrame() 
    {
        final SurfaceHolder holder = getSurfaceHolder();

        Canvas c = null;
        try 
        {
            c = holder.lockCanvas();
            if (c != null) 
            {              
                 c.drawBitmap(image1, 0, 0, null);
                 c.drawBitmap(image2, 0, 0, null);
                 c.drawBitmap(image3, 0, 0, null);                   
            }
        } finally 
        {
            if (c != null) holder.unlockCanvasAndPost(c);
        }
    }
}
}

Este código apenas exibe as imagens muito rapidamente porque não sei como esperar entre exibir imagens ...

Alguém pode me dar algumas dicas ou me mostrar um exemplo de outra solução?

Muito obrigado

UPDATE:

Consegui resolver o meu problema adicionando um Runnable:

private final Runnable drawRunner = new Runnable() 
    {
        @Override
        public void run() {
            drawFrame();
        }

    };

e adicionando:

    handler.removeCallbacks(drawRunner);
        if (visible) 
        {
           handler.postDelayed(drawRunner, 1000); // delay 1 sec
        }

no final de drawFrame ().

Espero que isso ajude alguém.

questionAnswers(2)

yourAnswerToTheQuestion