【发布时间】:2017-03-07 09:33:43
【问题描述】:
我正在编写一个游戏,您可以在其中按住屏幕让直升机飞行。现在,当直升机与屏幕边框(单个设备的高度和宽度)相撞时,活动结束
((Activity) context).finish();
当玩家在碰撞后快速停止时它工作得很好,但如果他坚持下去,我会得到讨厌的错误。
这就是我怀疑 onTouchEvent 方法的原因
@Override
public boolean onTouchEvent(MotionEvent event) {
// background music
mp.start();
mp.setLooping(true);
copter.setVolume((float) 0.2, (float) 0.2);
if (event.getAction() == MotionEvent.ACTION_DOWN && fuel > 0) {
copter.start();
copter.setLooping(true);
if (!player.getPlaying()) {
player.setPlaying(true);
player.setUp(true);
fuel--;
} else {
player.setUp(true);
fuel--;
}
return true;
}
if (event.getAction() == MotionEvent.ACTION_UP) {
copter.pause();
player.setUp(false);
return true;
}
return super.onTouchEvent(event);
}
有没有办法在碰撞后忽略 TouchEvents?还是 OnTouchEvent 甚至都不是问题?
【问题讨论】:
-
无需怀疑任何事情。去看看你的应用程序日志。在那里你会看到崩溃发生的确切位置。
-
请分享来自 logcat 的错误堆栈跟踪
标签: android view draw touch-event