如何使用 android studio 创建平板电脑背景

how to create a tablet background using android studio

我一直在关注这个教程: Page。 我遇到了很多错误。 您可以通过在 GitHub 上分享代码来帮助我吗? 您也可以 post 在 Stack Overflow 上回答。 这是我的 Gif 我在我的 java 文件中使用了它:

package com.example.background;
import android.graphics.Canvas;
import android.graphics.Movie;
import android.os.Handler;
import android.service.wallpaper.WallpaperService;
import android.util.Log;
import android.view.SurfaceHolder;

import java.io.IOException;


public class GIFWallpaperEngine extends WallpaperService{
private final int frameDuration = 20;

private SurfaceHolder holder;
private Movie movie;
private boolean visible;
private Handler handler;

public GIFWallpaperEngine(Movie movie) {
    this.movie = movie;
    handler = new Handler();
}



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

private Runnable drawGIF = new Runnable() {
    public void run() {
        draw();
    }
};

private void draw() {
    if (visible) {
        Canvas canvas = holder.lockCanvas();
        canvas.save();
        // Adjust size and position so that
        // the image looks good on your screen
        canvas.scale(3f, 3f);
        movie.draw(canvas, -100, 0);
        canvas.restore();
        holder.unlockCanvasAndPost(canvas);
        movie.setTime((int) (System.currentTimeMillis() % movie.duration()));

        handler.removeCallbacks(drawGIF);
        handler.postDelayed(drawGIF, frameDuration);
    }
}
@Override
public void onVisibilityChanged(boolean visible) {
    this.visible = visible;
    if (visible) {
        handler.post(drawGIF);
    } else {
        handler.removeCallbacks(drawGIF);
    }
}
@Override
public void onDestroy() {
    super.onDestroy();
    handler.removeCallbacks(drawGIF);
}
@Override
public Engine onCreateEngine() {
    try {
        Movie movie = Movie.decodeStream(
                getResources().getAssets().open("wolverine.gif"));

        return new Engine(movie);
    }catch(IOException e){
        Log.d("GIF", "Could not load asset");
        return null;
    }
}
}

是否有任何错误,因为覆盖显示错误。 是这样的:不需要重写,因为无论 super 做什么都是方法。

好吧,这就是我的解决方案GitLink

当您尝试 运行 应用程序时遇到的问题的解决方案,首先单击 app,然后单击 Edit Configurations

现在,在 Launch Options select NOTHING:

最后一步,按OK

最后,您可以 运行 您的应用程序了。试试吧!