Android 多点触摸(二)

2014-11-24 12:21:29 · 作者: · 浏览: 8
y = getWindowManager().getDefaultDisplay();
float dw = currentDisplay.getWidth();
float dh = currentDisplay.getHeight();
bitmap = Bitmap.createBitmap((int)dw, (int)dh, Config.ARGB_8888);
canvas = new Canvas(bitmap);
paint = new Paint();
paint.setColor(Color.GREEN);
paint.setStrokeWidth((float) 10.00);//设置笔刷大小,自己的屏幕太犀利了
imgView.setImageBitmap(bitmap);
imgView.setOnTouchListener(this);
}
@Override
public boolean onTouch(View v, MotionEvent event) {
int pointerCount = event.getPointerCount();
int pointerId = 0;
int action = (event.getAction()&MotionEvent.ACTION_MASK) % 5;//统一单点和多点
switch(action){
case MotionEvent.ACTION_DOWN:
if(pointerCount>1){
pointerId = (event.getAction()&MotionEvent.ACTION_POINTER_ID_MASK)>>>
MotionEvent.ACTION_POINTER_ID_SHIFT;
}
break;
case MotionEvent.ACTION_MOVE:
if(pointerCount == 2){
float x = event.getX(1);
float y = event.getY(1);
canvas.drawPoint((int)x, (int)y, paint);
imgView.invalidate();
}
break;
case MotionEvent.ACTION_UP:
break;
}

return true;

}
}