当试图在SKScene之间转换到另一个SKScene时。例如,当游戏结束时,我使用下面的代码并得到以下错误:
在call中的额外争论“大小”
下面是发生此错误时使用的代码示例。
let scene = GameOverScreen(size: self.scene!.size) //<<---- Error throws here
scene.scaleMode = SKSceneScaleMode.AspectFill
view!.scene?.paused = true
self.scene!.view!.presentScene(scene, transition: transition)这在我以前的比赛中从来没有发生过,我似乎不知道为什么?
使用XCode 7、SpriteKit 2和SpriteKit
提前谢谢你,
瑞秋
发布于 2015-10-20 17:00:16
我猜这是因为您在GameOverScene中定义了其他您没有提到的初始化器。既然这样做了,您就不会自动继承SKScene的所有初始化器。
override init(size: CGSize) {
// Set up your properties
super.init(size: size)
// Do whatever else you need to
}如果您没有在GameOverScene中定义任何初始化器,就不会看到这种行为。我建议对自动初始化继承做一些进一步的阅读。我在该页上链接的部分描述了类何时继承超类的初始化器的规则。默认情况下,它们不是继承的。
https://stackoverflow.com/questions/33237378
复制相似问题