如何在 swift 中获取 SK 序列到 运行
How do I get SK sequences to run in swift
我在网上找到了这个非常有用的代码,但我无法将其下载到 运行。变量名都是正确的,我已经使用 print 语句来确保它确实进入了这个函数。它似乎没有 运行 标签节点上的序列。谢谢
func fadeOutInfoText(){
infoLabel1.removeAllActions()
infoLabel2.removeAllActions()
speechIcon.removeAllActions()
let wait:SKAction = SKAction.wait(forDuration: 0.5)
let fade:SKAction = SKAction.fadeAlpha(to: 0, duration: 0.5)
let run:SKAction = SKAction.run {
self.infoLabel1.text = ""
self.infoLabel2.text = ""
self.infoLabel1.alpha = 1
self.infoLabel2.alpha = 1
self.speechIcon.alpha = 1
self.speechIcon.isHidden = true
}
let seq:SKAction = SKAction.sequence([wait,fade,run])
let seq2:SKAction = SKAction.sequence([wait,fade])
infoLabel1.run(seq)
infoLabel2.run(seq2)
speechIcon.run(seq2)
}
这是序列的示例代码。
let sprite = SKSpriteNode(imageNamed:"Spaceship")
let scale = SKAction.scale(to: 0.1, duration: 0.5)
let fade = SKAction.fadeOut(withDuration: 0.5)
let sequence = SKAction.sequence([scale, fade])
sprite.run(sequence)
告诉我有用没用
注意:这将是一条评论(还没有足够的声誉来这样做:)
逐行执行上面的代码(并在空场景中添加节点)给出了预期的结果。大概您没有从场景的 update(_:)
方法中调用此函数,因为这会阻止标签和语音图标执行任何操作,因为在场景执行操作之前删除了操作(请参阅 here)。在这组操作可以在别处完成之前,请确保您没有删除所有操作并更改标签的 alpha。
我在网上找到了这个非常有用的代码,但我无法将其下载到 运行。变量名都是正确的,我已经使用 print 语句来确保它确实进入了这个函数。它似乎没有 运行 标签节点上的序列。谢谢
func fadeOutInfoText(){
infoLabel1.removeAllActions()
infoLabel2.removeAllActions()
speechIcon.removeAllActions()
let wait:SKAction = SKAction.wait(forDuration: 0.5)
let fade:SKAction = SKAction.fadeAlpha(to: 0, duration: 0.5)
let run:SKAction = SKAction.run {
self.infoLabel1.text = ""
self.infoLabel2.text = ""
self.infoLabel1.alpha = 1
self.infoLabel2.alpha = 1
self.speechIcon.alpha = 1
self.speechIcon.isHidden = true
}
let seq:SKAction = SKAction.sequence([wait,fade,run])
let seq2:SKAction = SKAction.sequence([wait,fade])
infoLabel1.run(seq)
infoLabel2.run(seq2)
speechIcon.run(seq2)
}
这是序列的示例代码。
let sprite = SKSpriteNode(imageNamed:"Spaceship")
let scale = SKAction.scale(to: 0.1, duration: 0.5)
let fade = SKAction.fadeOut(withDuration: 0.5)
let sequence = SKAction.sequence([scale, fade])
sprite.run(sequence)
告诉我有用没用
注意:这将是一条评论(还没有足够的声誉来这样做:)
逐行执行上面的代码(并在空场景中添加节点)给出了预期的结果。大概您没有从场景的 update(_:)
方法中调用此函数,因为这会阻止标签和语音图标执行任何操作,因为在场景执行操作之前删除了操作(请参阅 here)。在这组操作可以在别处完成之前,请确保您没有删除所有操作并更改标签的 alpha。