Java 视图类中的Android onTouchEvent
我已尝试调试消息和其他内容,但从event.getAction()获得的唯一值是0。。。我相信这是行动,为什么我不能检测到行动或行动Java 视图类中的Android onTouchEvent,java,android,touch,Java,Android,Touch,我已尝试调试消息和其他内容,但从event.getAction()获得的唯一值是0。。。我相信这是行动,为什么我不能检测到行动或行动 package com.andrewxd.test01; import android.content.Context; import android.graphics.Bitmap; import android.graphics.BitmapFactory; import android.graphics.Canvas; import android.gra
package com.andrewxd.test01;
import android.content.Context;
import android.graphics.Bitmap;
import android.graphics.BitmapFactory;
import android.graphics.Canvas;
import android.graphics.Paint;
import android.view.MotionEvent;
import android.view.View;
public class Game extends View {
private Bitmap enemy;
private Enemy enemyN;
private Paint paint;
private float x,y;
public Game(Context context) {
super(context);
enemy = BitmapFactory.decodeResource(getResources(), R.drawable.enemy);
enemy = Bitmap.createScaledBitmap(enemy, 300 , 300, false);
enemyN = new Enemy(10, 10, enemy);
paint = new Paint();
x = 0;
y = 0;
}
@Override
protected void onDraw(Canvas canvas){
canvas.drawRect(x, y, 50, 50, paint);
}
@Override
public boolean onTouchEvent(MotionEvent event){
super.onTouchEvent(event);
if(event.getAction() == MotionEvent.ACTION_DOWN){
x = event.getX();
y = event.getY();
invalidate();
} else if(event.getAction() == MotionEvent.ACTION_MOVE){
x = event.getX();
y = event.getY();
invalidate();
}
return false;
}
}
我做错什么了吗?还是应该这样做?如果这应该是这样的,我在哪里可以检测到触摸运动,这是因为你在onTouchEvent的末尾返回了false。当您返回
false
时,表示您的视图无法处理更多触摸事件,因此事件将不再发送到视图
。如果你想接收MOVE
和UP
事件,那么你需要返回true。试图发布相同的答案,但迟到了几秒钟:)我只想添加一个链接,说明实际发生了什么: