2011-10-10 55 views
1

我正在關注來自Beginning Android Game電子書 的Mr. Nom教程,以及識別觸摸是在哪裏進行的部分,if語句即使條件真的。Android - if語句沒有執行

我運行了調試器並檢查了值。中頻是一樣的東西

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

但即使像 event.x = 15 event.y = 450 (從調試器了)值 不會if語句的大括號內獲得。 請求的圖像位於人像屏幕的左下角。

有什麼想法?

謝謝!

回答

1

如果event.x = 15event.y = 450,則條件

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

計算爲真。你的代碼中有其他東西必須是錯的。 (也許分支執行的是,只是因爲某種原因你沒有看到它的效果。)請發佈更多代碼,或者更好,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)); 
+0

我添加了一個斷點行了,如果條件之後,它不會停止。 還有什麼可能是錯誤的,以防止它進入if語句? 一些設置什麼的?所以我會知道要粘貼哪部分代碼 –