2
私はどのノード名がタッチされたかを決定するswitch文を持っています。私は重複する2つのノードを持っています。一番上のものがタッチされた場合は、一番上のノードのケースのコードだけを実行します。だから私はその事件の後に休憩を取る。それでも、両方の場合のコードが実行されます。トップケースだけを引き起こす最良の方法は何ですか?以下のコードです:Swift&SpriteKit - break文を使用したswitch文
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
速やかに、あなたは壊れている必要はありません – Knight0fDragon
私はnodeTouchedが両方のノードに触れているとあなたはそれを知っていないことを賭けて、 'print(" \(nodeTouched.count) ")') ' – Knight0fDragon