我想从32位PNG图像创建一个ALPHA_8配置的位图。为此,我致电decodeResource(Resources res, int id, Options opts)
opts.inPreferredConfig = Bitmap.Config.ALPHA_8
。但是,它返回带有ARGB_8888配置的位图:
BitmapFactory.Options options = new BitmapFactory.Options();
options.inPreferredConfig = Bitmap.Config.ALPHA_8;
Bitmap bitmap = BitmapFactory.decodeResource(getResources(), id, options);
// Output: "bitmap.getConfig() returns ARGB_8888"
Log.w(tag, "bitmap.getConfig() returns " + bitmap.getConfig());
为什么会这样?如何让它正常工作?
答案 0 :(得分:0)
因为你的源位图无法被ALPHA_8解码,所以Android自动选择ARGB888进行解码。