package com.tang.gril; import java.io.InputStream; import android.app.Activity; import android.app.ActionBar; import android.app.Fragment; import android.graphics.Bitmap; import android.graphics.BitmapFactory; import android.graphics.BitmapFactory.Options; import android.graphics.Canvas; import android.graphics.Color; import android.graphics.Matrix; import android.graphics.Paint; import android.os.Bundle; import android.view.LayoutInflater; import android.view.Menu; import android.view.MenuItem; import android.view.MotionEvent; import android.view.View; import android.view.View.OnTouchListener; import android.view.ViewGroup; import android.widget.ImageView; import android.os.Build; public class MainActivity extends Activity { private ImageView before; private ImageView after; private Canvas canvas; private Bitmap alterMap; private Paint paint; @Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); before = (ImageView) findViewById(R.id.before); System.out.println(before); after = (ImageView) findViewById(R.id.after); BitmapFactory.Options opts = new Options(); opts.inSampleSize = 2; //InputStream is = getResources().openRawResource(R.drawable.ic_launcher); //Bitmap beforeMap = BitmapFactory.decodeStream(is); Bitmap beforeMap = BitmapFactory.decodeResource(getResources(), R.drawable.before, opts); Bitmap afterMap = BitmapFactory.decodeResource(getResources(), R.drawable.after, opts); alterMap = Bitmap.createBitmap(beforeMap.getWidth(), beforeMap.getHeight(), beforeMap.getConfig()); paint = new Paint(); paint.setStrokeWidth(5); paint.setColor(Color.BLACK); canvas = new Canvas(alterMap); canvas.drawBitmap(beforeMap, new Matrix(), paint); before.setImageBitmap(beforeMap); after.setImageBitmap(afterMap); before.setOnTouchListener(new OnTouchListener() { public boolean onTouch(View view, MotionEvent event) { switch(event.getAction()){ case MotionEvent.ACTION_DOWN: break; case MotionEvent.ACTION_MOVE: int newX = (int) event.getX(); int newY = (int) event.getY(); for (int i=-50; i<50; i++) { for (int j=-50; j<50; j++) { alterMap.setPixel(newX+i, newY+j, Color.TRANSPARENT); } } before.setImageBitmap(alterMap); break; } return true; } }); } }