【发布时间】:2015-12-03 20:02:32
【问题描述】:
我正在尝试创建动画壁纸。
基本上我的壁纸有一些背景图片和几张前景图片。 我想在不同背景的前景图片之间进行交换。
我有一个如下所示的 Draw 方法:
protected void onDraw(Canvas canvas){
super.onDraw(canvas);
canvas.drawColor(0);
canvas.drawBitmap(background,0,0,null);
canvas.drawBitmap(foreground,x,y,null);
canvas.save();
}
我的前景图片是具有大量透明空间的 png。
我这样加载我的前景图片:
foreground=decodeSampledBitmapFromResource(getResources(), R.drawable.c1, 440,320);
decodeSampledBitmapFromResource 方法取自这里的教程:https://developer.android.com/training/displaying-bitmaps/load-bitmap.html
我的问题是前景会在应该显示透明色的地方显示白色,从而用难看的白色矩形覆盖背景。
我想知道是否有人对我有任何建议以使其透明化。 我试过设置 options.inPreferredConfig = Bitmap.Config.ARGB_8888;对于 BitmapFactory,但它没有帮助。
【问题讨论】: