我正在如下创建位图
ImageDecoder.Source source = ImageDecoder.createSource(this.getContentResolver(), mSourceUri);
try {
bitmap = ImageDecoder.decodeBitmap(source));
} catch (IOException e) {
e.printStackTrace();
}
这将返回不可变的位图。我看到了google documentation,有一个方法setMutableRequired()
,但是我找不到如何使用此方法。它不适用于ImageDecoder以及源代码
直到适当的答案到达此问题为止。任何与我有类似困难的人都可以使用BitmapFactory方法来获取可变位图]
BitmapFactory.Options options = new BitmapFactory.Options();
options.inMutable = true;
Bitmap bitmap = BitmapFactory.decodeStream(getContentResolver().openInputStream(mSourceUri), null, options);
灵感来自this answer。