1
我似乎在我的場景中有一個節點出現問題。Swift + SpriteKit - 即使不可見,按鈕也是可點擊的
我有一個按鈕:
func createAttackButton() {
attackButton.zPosition = 1
attackButton.anchorPoint = CGPointZero
attackButton.position = CGPointMake(20, 20)
attackButton.size = CGSize(width: 150, height: 40)
addChild(attackButton)
}
此功能時,接觸與敵人做出調用。
若要從這個按鈕的功能我用的touchesBegan()FUNC:
override func touchesBegan(touches: Set<UITouch>, withEvent event: UIEvent?) {
for touch: AnyObject in touches {
let location = touch.locationInNode(self)
if attackButton.containsPoint(location) {
print("Attack Button Clicked")
}
}
}
一旦敵人已經被摧毀我刪除攻擊鍵節點:
attackButton.removeFromParent()
然而,在攻擊按鈕出現的區域,一旦它被移除,該區域仍然是可點擊的。
任何想法?
是的,containsPoint是一個簡單的指向矩形比較的指針,不需要父對象來使其工作。 '節點的邊界是否包含所述的點?'基本上是函數的功能。由於位置不是可選的,因此您將始終能夠通過containsPoint,除非它允許寬度和高度爲零,不確定是否允許這樣做。 – Knight0fDragon