如何创建左/右移动按钮?

Met*_*man 5 sprite-kit swift

请帮忙。我是 Swift 的初学者。我为播放器和左/右按钮添加了精灵。但是如何为每个按钮添加一个动作并将这些动作应用于播放器?

import SpriteKit

class GameScene: SKScene, SKPhysicsContactDelegate {

    var player: SKSpriteNode!
    var leftMove: SKSpriteNode!
    var rightMove: SKSpriteNode!

    override func didMoveToView(view: SKView) {

        player = SKSpriteNode (imageNamed: "player")

        player.position = CGPoint(x:127, y:125)

        addChild(player)


        leftMove = SKSpriteNode (imageNamed: "leftMove")

        leftMove.position = CGPoint(x:80, y:35)

        leftMove.size = CGSize (width: 55, height: 55)

        addChild(leftMove)


        rightMove = SKSpriteNode (imageNamed: "rightMove")

        rightMove.position = CGPoint(x:160, y:35)

        rightMove.size = CGSize (width: 55, height: 55)

        addChild(rightMove)

        physicsWorld.contactDelegate = self


    }
Run Code Online (Sandbox Code Playgroud)

Ste*_*fan 4

为按钮指定一个唯一的名称,例如:

leftMove.name = "Left"
rightMove.name = "Right"
Run Code Online (Sandbox Code Playgroud)

实现touchesBegan中的逻辑:

override func touchesBegan(touches: Set<UITouch>, withEvent event: UIEvent?) {

  /* Called when a touch begins */
  for touch: AnyObject in touches {
    let location = touch.locationInNode(self)
    let node = self.nodeAtPoint(location)

    if (node.name == "Left") {
        // Implement your logic for left button touch here:
        player.position = CGPoint(x:player.position.x-1, y:player.position.y)
    } else if (node.name == "Right") {
        // Implement your logic for right button touch here:
        player.position = CGPoint(x:player.position.x+1, y:player.position.y)
    }
  }
}
Run Code Online (Sandbox Code Playgroud)