Android 如何允许画布上存在多个onTouch事件?
我有下面的应用程序,可以在触摸屏上画一个圆圈。第二次触摸屏幕时,第一个触摸圈被移除,并在第二次触摸的位置创建一个新的触摸圈。如何允许多个圆圈在触摸屏幕时出现相同的次数?(即5个触摸事件=5个圆圈在同一画布上的触摸位置出现) 使用它返回触摸事件的指针索引Android 如何允许画布上存在多个onTouch事件?,android,android-canvas,Android,Android Canvas,我有下面的应用程序,可以在触摸屏上画一个圆圈。第二次触摸屏幕时,第一个触摸圈被移除,并在第二次触摸的位置创建一个新的触摸圈。如何允许多个圆圈在触摸屏幕时出现相同的次数?(即5个触摸事件=5个圆圈在同一画布上的触摸位置出现) 使用它返回触摸事件的指针索引 public class Lab12Activity extends Activity { Point pt = new Point(); @Override protected void onCreate(Bundle savedInstan
public class Lab12Activity extends Activity {
Point pt = new Point();
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(new DrawView(this));
}
class DrawView extends View implements View.OnTouchListener {
public DrawView(Context context) {
super(context);
this.setOnTouchListener(this);
}
@Override
protected void onDraw(Canvas canvas) {
canvas.drawColor(Color.GRAY);
Paint paint = new Paint();
paint.setColor(Color.WHITE);
canvas.drawCircle(pt.x, pt.y, 15, paint);
paint.setColor(Color.BLUE);
canvas.drawRect(0, 0, 225, 150, paint);
paint.setStyle(Paint.Style.STROKE);
paint.setStrokeWidth(1);
paint.setColor(Color.WHITE);
paint.setTextSize(30);
canvas.drawText("Clear", 75, 75, paint);
canvas .drawText("Tap to add Circles", 300, 75, paint);
}
public boolean onTouch(View view, MotionEvent event) {
if (event.getAction() == MotionEvent.ACTION_DOWN) {
pt.x = (int) event.getX();
pt.y = (int) event.getY();
invalidate();
}
return true;
}
}
}