~~~
ImageView after;
ImageView before;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_main);
after = (ImageView) findViewById(R.id.after);
before= (ImageView) findViewById(R.id.before);
Options options = new Options();
// options.inSampleSize = 2;
Bitmap afterMap = BitmapFactory.decodeResource(getResources(), R.drawable.g7_back,options );
Bitmap beforeMap = BitmapFactory.decodeResource(getResources(), R.drawable.g7_up,options);
//可以修改的bitmap
final Bitmap alterMap = Bitmap.createBitmap(600, 600, beforeMap.getConfig());
//创建画布
final Canvas canvas = new Canvas(alterMap);
//创建画笔
final Paint paint = new Paint();
paint.setColor(Color.BLACK);
paint.setStrokeWidth(5);
canvas.drawBitmap(beforeMap, new Matrix(), paint);
after.setImageBitmap(afterMap);
before.setImageBitmap(beforeMap);
before.setOnTouchListener(new OnTouchListener() {
@Override
public boolean onTouch(View v, 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=-8;i<8;i++){
for(int j=-8;j<8;j++)
alterMap.setPixel(i+newX, j+newY, Color.TRANSPARENT);
}
before.setImageBitmap(alterMap);
break;
case MotionEvent.ACTION_UP:
break;
default:
break;
}
return true;
}
});
}
~~~