Draw From Old Canvas - Android

前端 未结 2 622
半阙折子戏
半阙折子戏 2021-02-11 09:10

I\'m making an App that needs to be able to draw new graphics on top of the last set.

This is my current onDraw() method -

protected void onDraw(Canvas          


        
2条回答
  •  小鲜肉
    小鲜肉 (楼主)
    2021-02-11 10:05

    Found the answer myself :)

    @Override
    protected void onDraw(Canvas c) {
    
    if(bitmap != null && canvas != null) { 
        canvas.drawLine(p1.x, p1.y, p2.x, p2.y, linePaint);
        c.drawBitmap(bitmap, 0, 0, linePaint);  
    }
    }
    
    @Override
    public void surfaceChanged(SurfaceHolder holder, int format, int width, int height) {
    
    bitmap = Bitmap.createBitmap(width, height, Config.RGB_565);
    canvas = new Canvas(bitmap);
    canvas.drawColor(Color.WHITE);
    }
    

    Works exactly as intended, it creates the effect of drawing on top of the old canvas continuously

提交回复
热议问题