I have a background image (a map) on which I need to regularly draw the you-are-here icon. I use Canvas to draw the icon on top of the map. Assuming that the drawing process is triggered on button click (see code below), how can I erase the previous drawing?
private void displayUserPos(Point userPos) { Bitmap marker = BitmapFactory.decodeResource(getResources(), R.drawable.ic_yah); canvas.drawBitmap(marker, (float)userPos.getX(), (float)userPos.getY(), null); imgView.setImageBitmap(fmOverlay); }
To clear the Canvas, you can use the clearRect() method. This method performs pretty well than others for clearing the canvas (such as resetting the width/height, destroying the canvas element and then recreating it, etc..) const context = canvas. getContext('2d'); context.
To erase a complete background in Canva, use the Canva Background Remover tool under “Effects.” To erase or restore certain parts of the background, use the “Erase” or “Restore” function (only applicable after using the Background Remover tool first).
To delete an Object you don't want: Tap+hold your object in the Import menu on canvas. A popup menu will appear. Tap the Delete button (the trash can).
canvas.drawColor(0, Mode.CLEAR);
More info http://developer.android.com/guide/topics/graphics/index.html
canvas.drawColor(0, Mode.CLEAR);
If you love us? You can donate to us via Paypal or buy me a coffee so we can maintain and grow! Thank you!
Donate Us With