Swift error: "double is not convertible to UInt8"

Swift error: "double is not convertible to UInt8"

var dvalue:Double = 1.03
var stok1 = SKSpriteNode(imageNamed: "stok") 
stok1.zRotation = dvalue * stok1.zRotation

这段代码在最后一行给出了这个错误: "Double is not convertible to UInt8"

如何解决这个问题?

zRotation 是一个 CGFloat。

你的 dValue 是双打。

它们不兼容。要将它们相乘,它们必须是同一类型:要么都是 CGFloat,要么都是 Double。在这种情况下,显然 CGFloat 是可取的,因为我们会将结果分配给 CGFloat。

因此,将您的 dValue 声明为 CGFloat,一切都会发生。