2
我有一個switch語句,它決定了哪個節點名稱被觸摸。我有兩個重疊的節點。如果最上面的那個被觸摸,我只需要執行頂層節點的代碼。所以我在這個案子之後休息了一下。即便如此,這兩種情況下的代碼都被執行了。什麼纔是最好的方式來觸發頂級案件?下面是代碼:Swift&SpriteKit - 使用中斷的開關語句
for node in nodeTouched {
if let currentNode = node.name {
switch currentNode {
case "thisIsTheTopNode":
print("top")
break
case "thisIsTheNodeUnderneath":
print("bottom")
break
default:
break
}
}
}
輸出:
頂部
底部
我不認爲上述代碼有任何問題。你的break語句應該可以工作。大多數情況下,您的nodeTouched都具有兩個節點。如果是的話,那麼你也需要從for循環中斷開。 – adev
在swift中,你不需要中斷 – Knight0fDragon
我敢打賭,nodeTouched觸及兩個節點,並且你不知道它,在你的print [「(\\ nodeTouched.count)」)之後放置一個打印文件' – Knight0fDragon