Android - 如果语句没有执行

时间:2011-10-10 22:21:16

标签: java android

我正在关注来自Beginning Android Game电子书的Nom先生教程, 并且在识别触摸位置的部分中,即使条件为真,if语句也不会执行。

我运行调试器并检查了值。 if就像是

if(event.x >0 && event.x <64 && event.y>416 && event.y<480)

但即使是像这样的价值观 event.x = 15 event.y = 450 (来自调试器) 它不会进入if语句的大括号内。 请求的图像位于纵向屏幕的左下角。

有什么想法吗?

谢谢!

1 个答案:

答案 0 :(得分:1)

如果event.x = 15event.y = 450,那么条件

event.x >0 && event.x <64 && event.y>416 && event.y<480

评估为true。你的代码中还有其他一些错误。 (也许分支已经执行,只是因为某些原因你没有看到它的效果。)请发布更多代码,甚至更好的SSCCE

为了调试这种情况,我建议你拆分表达式并执行类似

的操作
Log.I("...", "cond1: " + (event.x >   0));
Log.I("...", "cond2: " + (event.x <  64));
Log.I("...", "cond3: " + (event.y > 416));
Log.I("...", "cond4: " + (event.y < 480));