gpt4 book ai didi

ios - 循环没有使动画工作,swift 2

转载 作者:搜寻专家 更新时间:2023-11-01 06:20:46 26 4
gpt4 key购买 nike

我正在尝试让一个球改变位置 10 次:

for _ in 10 {    
let ballRandomX = Int(arc4random_uniform(896)) + 64
let ballRandomY = Int(arc4random_uniform(640)) + 64

let moveAction = SKAction.moveTo(CGPoint(x: ball1RandomX, y: ball1RandomY), duration: 1.0)
self.ball.runAction(moveAction)
}

但是球只会移动一次。我发现所有的循环都是在动画结束之前完成的。这意味着当第一步移动时,第二个循环就会到来并改变球的目的地。计算机做这件事的速度如此之快,看起来它只做了一步。最明显的解决方案是停止循环,直到动画结束。我试过暂停,但它不起作用。有什么想法吗?

最佳答案

您要使用的是序列操作。

var allActions = [SKAction]()
for _ in 0..<10 {
let ballRandomX = Int(arc4random_uniform(896)) + 64
let ballRandomY = Int(arc4random_uniform(640)) + 64

let moveAction = SKAction.moveTo(CGPoint(x: ball1RandomX, y: ball1RandomY), duration: 1.0)
allActions.append(moveAction)
}
let sequenceAction = SKAction.sequence(allActions)
self.ball.runAction(sequenceAction)

这将依次运行所有操作。

关于ios - 循环没有使动画工作,swift 2,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/34683798/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com