在屏幕上创建一个节点att随机CGPoint

时间:2018-12-06 22:40:54

标签: swift sprite-kit

我想在通用应用程序的屏幕上的任意位置创建形状。 如果我制作了GKRandomDistribution,则shape.position.xshape.position.y会给我一个错误,提示它无法将Int转换为CGPoint

如果我知道屏幕的大小,这很容易,但是由于要实现这种通用性,我要做的就是self.frame,而我找不到找到类似{{ 1}}。

我希望对此有所帮助!

1 个答案:

答案 0 :(得分:0)

我假设您将在您的SKScene子类中调用它。如果我正确理解了您的问题,这应该可以解决问题

func randomPosition() -> CGPoint {

    let x = CGFloat.random(in: 0...frame.maxX)
    let y = CGFloat.random(in: 0...frame.maxY)
    return CGPoint(x: x, y: y)

}