我正在尝试在android中创建一个图像保存和检索功能。我从画布创建jpg文件的代码如下所示
Bitmap bitmap = Bitmap.createBitmap( view.getWidth(), view.getHeight(), Bitmap.Config.ARGB_8888);
Canvas canvas = new Canvas(bitmap);
view.draw(canvas);
bitmap.compress(Bitmap.CompressFormat.JPEG, 100, fos);
我正在尝试阅读jpg文件并使用
在画布上创建图像Bitmap bMap = BitmapFactory.decodeStream(buf);
Bitmap workingBitmap = Bitmap.createBitmap(bMap);
Bitmap mutableBitmap = workingBitmap.copy(Bitmap.Config.ARGB_8888, true);
view.mybitmap = mutableBitmap;
view.onDraw(view.Canvas);
我在onDraw中的代码是
canvas.drawBitmap(view.mybitmap, 0, 0, view.myPaint);
这会从存储的jpg文件中正确绘制画布上的位图,但之后我无法在画布上绘制任何内容。它是否在画布上加载了一个我无法编辑的不可变位图图像?
任何帮助将不胜感激!谢谢!
答案 0 :(得分:0)
您不需要像现在这样直接调用ondraw方法。对于自定义视图类,您需要调用的是view.invalidate();这将自动调用ondraw方法并重新绘制画布。您可能需要更新ondraw方法中的逻辑来处理要在画布上绘制其他内容的情况。