我只是想让一个 SKLabelNode 淡入,这是我的代码:
let welcome = SKLabelNode(text: "Welcome")
welcome.fontName = "HelveticaNeue-Light"
welcome.fontSize *= size.width/welcome.frame.width
welcome.fontColor = UIColor(white:1,alpha:0)
welcome.horizontalAlignmentMode = .center
welcome.verticalAlignmentMode = .center
welcome.position = CGPoint(x:size.width/2,y:size.height/2)
addChild(welcome)
let fadein = SKAction.fadeIn(withDuration: 1)
let remove = SKAction.removeFromParent()
welcome.run(SKAction.sequence([fadein,remove]))
但它不起作用,我不知道为什么。
奇怪的是 removeFromParent 部分工作正常,只是淡入不正常。
我已经尝试过更改字体,制作标签淡出,甚至进行更改 alpha 的自定义操作,所有这些都失败了。
我只是想不出问题是什么。
任何想法将不胜感激。
提前致谢。
最佳答案
不是将 fontColor
的 alpha
设置为 0,而是将 SKLabelNode
的 alpha
设置为 0在对其运行 fadeIn
操作之前。这是因为操作应用于节点本身,而不是节点内部的属性。 (例如,在您的情况下:fadeIn
影响 SKLabel.alpha
,而不是 SKLabel.fontColor.alpha
)
关于ios - Swift:SKLabelNode 淡入淡出动画不淡出,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/40317082/