【发布时间】:2016-07-12 07:00:58
【问题描述】:
我无法在 ontouch() 中获取画布对象。没有画布,我无法在触摸时画一个圆圈。如何在触摸时绘制任何形状或图像
public class Board extends View implements View.OnTouchListener {
public Board(Context context) {
super(context);
Paint paint1 = new Paint();
paint1.setTextSize(50);
paint1.setColor(Color.WHITE);
View view=this;
view.setOnTouchListener(this);
}
@Override
public void onDraw(Canvas canvas) {
super.onDraw(canvas);
canvas.drawRGB(200, 100, 0);
}
@Override
public boolean onTouch(View v, MotionEvent event) {
final int action = MotionEventCompat.getActionMasked(event);
int pointer = MotionEventCompat.getActionIndex(event);
if (action == MotionEvent.ACTION_DOWN) {
canvas.drawCircle(70, 1100, 50, paint1);
}
return false;
}
【问题讨论】:
-
Canvas不是本地或全局对象,因此您无法从onTouch()事件中访问它。在此方法上创建 Canvas 实例或使用 Global。 -
Draw Circle on touch的可能重复
标签: android android-canvas draw touch-event