【问题标题】:Swift how to move sprite?Swift如何移动精灵?
【发布时间】:2017-10-15 12:33:35
【问题描述】:

我想知道如何根据用户按下的屏幕一侧来移动 spritekit 中的精灵。就像如果用户点击屏幕右侧,精灵应该向右移动,当用户移开手指时,精灵停止移动。 有什么建议么? 非常感谢

【问题讨论】:

  • 我会投反对票。 1. 缺少关键标签 2. 你没有展示你到目前为止所做的事情。
  • 抱歉,由于我正在使用该平台并且找不到与此问题相关的任何问题,因此缺乏信息。这是我第一次发布问题。我将在以后的问题中提供更多信息

标签: swift xcode


【解决方案1】:

使用 touchesBegan 函数并获取触摸位置:

for location: AnyObject in touches {
var positionOfTouch = location.locationInNode(self)
//position of touch is of value CGPoint
}

存储xposition和yposition的值

var xPostion = positionOfTouch.position.x
var yPosition = positionOfTouch.position.y
//all in the touchesBegan func

做一个 if else 语句来查看用户是否触摸了一侧

if xPosition < 10 && yPosition > 10 && yPosition < self.size.height-10 {
//left side
let moveToLeftSide = SKAction.moveTo(x: 0, duration: 10)
object.run(moveToLeftSide)
}

继续设置边的值,然后设置 touchesEnded 函数 在 touchesEnded 函数中,写:

object.removeAllActions()

希望它有所帮助...如果您发现此答案有帮助,请记住将此答案设置为正确; )

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-05-20
    • 2016-05-13
    • 1970-01-01
    • 2023-03-15
    相关资源
    最近更新 更多