Я пробовал использовать конструктор Canvas с растровым изображением, но не знаю, почему он ничего не рисует, но если я использую конструктор по умолчанию, он работает
на созданной поверхности
public void surfaceCreated(SurfaceHolder holder) {
bitmap.createBitmap(c.getWidth(),c.getHeight(),Bitmap.Config.ARGB_8888);
c= new Canvas(bitmap);
c = holder.lockCanvas();
onDraw(c);
holder.unlockCanvasAndPost(c);
}
}
на onDraw
@Override
protected void onDraw(Canvas canvas) {
super.onDraw(canvas);
canvas.drawColor(Color.WHITE);
canvas.drawBitmap(scaledBackground, 0, 0, null);
canvas.drawBitmap(picScaled[0], this.getWidth() * 1 / 10, this.getHeight() * 1 / 5, null);
canvas.drawBitmap(picScaled[1], (float) (this.getWidth() * 6.5 / 10), this.getHeight() * 1 / 5, null);
canvas.drawBitmap(picScaled[2], (float) (this.getWidth() * 3.5/10), this.getHeight() * 3 / 5, null);
}
, если я удалю c= new Canvas(bitmap)
, он работает, но мне нужно использовать растровое изображение, чтобы я мог сохранить изображение во внешнем хранилище