0

您好,感谢您的阅读。

我是 Android 中 SurfaceView 和图形的新手,我想知道如何将我的图像的出现每张延迟 15 秒。我假设我会将延迟放在 render() 方法中......我一直在尝试循环计数为 15 秒,但还没有运气。

public void render(Canvas canvas) {

        canvas.drawColor(Color.BLACK);

        droid.draw(canvas);

        droid2.draw(canvas);

        droid3.draw(canvas);


    } 

我将如何完成渲染的延迟,如果不在 render() 方法中,那么我应该在哪里进行修改。

谢谢您的帮助。

4

1 回答 1

1

我没有测试它,但我认为它应该可以工作。它在纯java中工作。

    // on init
    long beginTime, timeTaken;
    beginTime = System.nanoTime();


    public void render(Canvas canvas) {

            canvas.drawColor(Color.BLACK);

            droid.draw(canvas);

            if(timeTaken > 15000000000L)
            droid2.draw(canvas);

            if(timeTaken > 30000000000L) // both in nanoseconds
            droid3.draw(canvas);

            timeTaken = System.nanoTime() - beginTime;

        } 

我想它应该工作。

于 2013-08-08T16:38:25.767 回答