1
我試圖爲我的一個精靈創建一個「按鈕觸摸」效果,它工作的很好,但隨後我用兩個或更多的手指同時敲擊,我得到了非常奇怪的結果,這裏是我的代碼:SpriteKit水龍頭縮放
let buttonPressAction = SKAction.scaleBy(0.8, duration: 0)
var button = SKNode()
override func didMoveToView(view: SKView) {
//assign sprite to node
button = self.childNodeWithName("button") as! SKSpriteNode!
}
for touch: AnyObject in touches {
let location = touch.locationInNode(self)
if button.containsPoint(location) {
button.runAction(buttonPressAction)
}
}
}
override func touchesEnded(touches: Set<UITouch>, withEvent event: UIEvent?) {
button.runAction(buttonPressAction.reversedAction())
}
如果我點擊並按住精靈,它scaleDown(這是很好),但如果繼續保持,我用其他手指在屏幕上點擊,它會多次調用相反的動作,多次放大精靈大小。我嘗試了scaledTo,它的工作原理!現在唯一的一件事就是我調整了gameScene中的精靈,當我縮放到1時,它調整到原始大小....感謝上一個答案!我感謝它! – extrablade
您能否將答案標記爲正確?我真的不明白你的評論的後半部分。我從不使用reverAction,也許只是嘗試... scaleTo(1,duration:0)重置按鈕。 – crashoverride777
,因爲我調整了GameScene.sks中按鈕的精靈,每當觸摸結束時,我將其縮小(scaleTo1,duration:0),並將其調整爲「真實」大小,其大小是在調整它的大小之前GameScene.sks – extrablade