我想在我的应用中显示带渐变的启动画面。但是背景中渐变的质量非常糟糕。所以我创建了一个简单的辐射渐变来仔细观察。
编辑:也许我应该提到我正在使用BitmapFactory.createScaledBitmap();和BitmapFactory.decodeStream()(图形位于资源文件夹中。)
结果如下:
原创* .jpg(质量100%)
截图Xperia X10(我用Eclipse截取屏幕截图)
答案 0 :(得分:0)
你可以在没有任何jpg文件的情况下使用shape drawable。创建矩形并为gradient
标记提供必要的parmas。
答案 1 :(得分:0)
为了缩放位图并保持ARGB_8888,我创建了一个所需大小的新位图。然后我使用canvas用drawBitmap
在新位图上绘制内在位图。此方法允许我在将位图绘制到新位图之前缩放位图。
inputStream = assetManager.open(path);
originalBitmap = BitmapFactory.decodeStream(inputStream, null, opts);
Bitmap resizedBitmap = Bitmap.createBitmap(desiredX, desiredY, Config.ARGB_8888);
Canvas canvas = new Canvas(resizedBitmap);
canvas.drawBitmap(originalBitmap, null, new Rect(0, 0, desiredX, desiredY), null);
inputStream.close();
return resizedBitmap;