Рисуем на холсте с растровым изображением в качестве фона
Я пытаюсь нарисовать фотографию, которую я сделал. Рисование работает без нарисованного изображения, но если я рисую растровое изображение, я вижу только растровое изображение, но появляется n рисунок. Я много пробовал, но ничего не помогло. Заранее спасибо.
private class myView extends View implements OnTouchListener{
File root = Environment.getExternalStorageDirectory();
Path path;
ArrayList _graphics = new ArrayList();
Bitmap myBitmap;
Paint myPaint;
public myView(Context context) {
super(context);
File file = new File(root, "temp.jpg");
myBitmap = null;
if (file.exists()) {
BitmapFactory.Options options = new BitmapFactory.Options();
options.inPreferredConfig = Bitmap.Config.ARGB_8888;
myBitmap = setBitmap(BitmapFactory.decodeFile(new File(root,
"temp.jpg").getPath(), options));
}
myPaint = new Paint();
myPaint.setColor(Color.GREEN);
myPaint.setStyle(Paint.Style.STROKE);
myPaint.setStrokeWidth(3);
}
@Override
protected void onDraw(Canvas canvas) {
canvas.drawBitmap(myBitmap, 0, 0, null);
for (Path path : _graphics) {
canvas.drawPath(path, myPaint);
}
}
@Override
public boolean onTouch(View v, MotionEvent event) {
if (event.getAction() == MotionEvent.ACTION_DOWN) {
path = new Path();
path.moveTo(event.getX(), event.getY());
} else if (event.getAction() == MotionEvent.ACTION_MOVE) {
path.lineTo(event.getX(), event.getY());
} else if (event.getAction() == MotionEvent.ACTION_UP) {
path.lineTo(event.getX(), event.getY());
_graphics.add(path);
}
return true;
}
}