试图在UIView中为SKNode设置动画

时间:2017-03-27 19:29:56

标签: ios swift sprite-kit

我已经以编程方式在我的UIView中创建了一个SKView。现在我想在所有方向上动画一个新的SKNodes,从中间开始(这个工作),具体取决于传递的视图。一切正常,除了SKNode的结束位置很奇怪。它不是向所有方向射击,而是从视角的边界进入角落。它永远不应该超出视图的界限。我正在从视图中将CGPoint转换为我的场景。

这是我的代码:

User

错误正确的getRandomPosition:

firstName

我知道代码看起来很糟糕,但它应该正确吗?传递视图是UIView内部的UIButton。 SKView与UIView具有完全相同的约束。动画应该从中间开始,然后到达传递视图的边界。

1 个答案:

答案 0 :(得分:0)

终于让它上班了。我以前没有注意到这么傻。发件人将永远是UIView中的一个较小的孩子。返回函数很棒,但SKNode不应该移动到返回的函数,但移动

更新的代码:

let randomPositionOfSender = getRandomPosition(view: sender)
        let fireAtWill = SKAction.moveBy(x: randomPositionOfSender.x, y: randomPositionOfSender.y, duration: randomDuration)