0

嗨,我想添加一个水平虚线预加载器,由于声誉较低,我无法添加任何图像,但作为参考,它应该像 .... .... 我在我的代码中添加了一个 gif 图像,但它只显示空白的白色屏幕。请让我知道如何实现这一点谢谢

4

1 回答 1

0

你是如何添加gif图像的?上次我尝试为此使用 gif 时,我创建了一个扩展为视图的类,然后添加了以下内容:

public class Splash extends View {

    private Movie movie;
    private long movieStart;

public Splash(Context context) {
        super(context);
        InputStream is = getContext().getResources().openRawResource(R.drawable.splash);
        movie = Movie.decodeStream(is);
    }
    @Override
    protected void onDraw(Canvas canvas) {
        canvas.drawColor(Color.TRANSPARENT);
        super.onDraw(canvas);
        long now = android.os.SystemClock.uptimeMillis();
        if (movieStart == 0) {
            movieStart = now;
        }
        if (movie != null) {
            int relTime = (int) ((now - movieStart) % movie.duration());
            movie.setTime(relTime);
            movie.draw(canvas, (getWidth() - movie.width()) / 2, (getHeight() - movie.height()) / 2);
            this.invalidate();
        }
    }
}

使用此类作为加载活动的视图。

Splash splashUI = new Splash(YourActivity.this);
setContentView(splashUI);

然后在您的清单上:

android:hardwareAccelerated="false"

关于您的加载活动。

于 2013-08-02T06:36:44.823 回答