私はキャンバスにアニメーションを持つクラスを持っています。私は触れる必要がありますが、OnTouchListenerは機能しません。私は主なアクティビティにリスナーを置こうとしましたが、とにかく動作しませんでした。Android:CanvasにOnTouchListenerを追加するには?
public class Animation extends View implements View.OnTouchListener{
private Paint paint;
private Snake snake;
public Animation(Context context) {
super(context);
snake = new Snake(10, 10, 1, 0, 1, 50);
paint = new Paint();
paint.setColor(Color.BLACK);
}
public void onDraw(Canvas canvas) {
super.onDraw(canvas);
snake.move(canvas);
invalidate();
}
public boolean onTouch(View v, MotionEvent event) {
System.out.println("asfaf");
float x = event.getX();
float y = event.getY();
switch (event.getAction()) {
case MotionEvent.ACTION_DOWN:
System.out.println(x + ' ' + y);
break;
case MotionEvent.ACTION_MOVE:
System.out.println(x + ' ' + y);
break;
case MotionEvent.ACTION_UP:
case MotionEvent.ACTION_CANCEL:
System.out.println(x + ' ' + y);
break;
}
return true;
}
}
ありがとうございました! –