arc4random_uniform负100到正100

时间:2015-12-23 21:02:18

标签: ios swift random

试图弄清楚如何使这个小球从中心(self.frame.width / 2)到(self.frame.width / 2 - 100)和(self.frame.width / 2 + 100)产生任何地方。 )

我在stackoverflow上找到了这个代码,看起来很好,但是当球即将产生时我的游戏崩溃了

ball.position = CGPoint(x: self.frame.width / 2 + (CGFloat(arc4random_uniform(201) - 100)), y: self.frame.height)

总是会非常感谢帮助< 3

1 个答案:

答案 0 :(得分:1)

arc4random_uniformUInt32作为参数并返回UInt32。从中减去100将最终导致下溢,从而导致崩溃。

您可以尝试以下内容:

ball.position = CGPoint(
    x: self.frame.width / 2 + CGFloat(arc4random_uniform(201)) - 100.0,
    y: self.frame.height
)