Ios 为什么SpriteKit没有';你什么也不给我看?
我刚刚启动了一个项目,并添加了以下代码行:Ios 为什么SpriteKit没有';你什么也不给我看?,ios,swift,sprite-kit,Ios,Swift,Sprite Kit,我刚刚启动了一个项目,并添加了以下代码行: override func didMoveToView(view: SKView) { let myNode = SKNode() myNode.position = CGPoint(x: 250.0, y: 300.0) addChild(myNode) let mySprite = SKSpriteNode(imageNamed: "Spaceship") mySprite.position = CGPoi
override func didMoveToView(view: SKView) {
let myNode = SKNode()
myNode.position = CGPoint(x: 250.0, y: 300.0)
addChild(myNode)
let mySprite = SKSpriteNode(imageNamed: "Spaceship")
mySprite.position = CGPoint(x: 0, y: 0)
mySprite.zPosition = 1
myNode.addChild(mySprite)
let myOtherSprite = SKSpriteNode(imageNamed: "Spaceship")
myOtherSprite.position = CGPoint(x: 50.0, y: 50.0)
myOtherSprite.zPosition = 2
myNode.addChild(myOtherSprite)
}
但是精灵不会出现在场景中。这里有什么问题?我检查了我的代码好几次,我认为没有错误。将
scene.size=skView.bounds.size
添加到GameViewController
的viewDidLoad
方法中,使其看起来像这样:
override func viewDidLoad() {
super.viewDidLoad()
if let scene = GameScene(fileNamed:"GameScene") {
// Configure the view.
let skView = self.view as! SKView
skView.showsFPS = true
skView.showsNodeCount = true
/* Sprite Kit applies additional optimizations to improve rendering performance */
skView.ignoresSiblingOrder = true
/* Fix Size */
scene.size = skView.bounds.size
/* Set the scale mode to scale to fit the window */
scene.scaleMode = .AspectFill
skView.presentScene(scene)
}
}
正如Knight0fDragon在下面指出的,这将影响自动布局的工作方式,因此它可能不适用于所有解决方案。将
scene.size=skView.bounds.size
添加到GameViewController
的viewDidLoad
方法中,使其看起来像这样:
override func viewDidLoad() {
super.viewDidLoad()
if let scene = GameScene(fileNamed:"GameScene") {
// Configure the view.
let skView = self.view as! SKView
skView.showsFPS = true
skView.showsNodeCount = true
/* Sprite Kit applies additional optimizations to improve rendering performance */
skView.ignoresSiblingOrder = true
/* Fix Size */
scene.size = skView.bounds.size
/* Set the scale mode to scale to fit the window */
scene.scaleMode = .AspectFill
skView.presentScene(scene)
}
}
正如Knight0fDragon在下面指出的,这将影响自动布局的工作方式,因此它可能不适用于所有解决方案。我启动了一个新的SpriteKit模板,并用您的方法替换默认的
didMoveToView
,宇宙飞船出现了。顺便说一句,myOtherSprite
的定义中有一个拼写错误,应该是“太空船”。你是在模拟器上运行还是在物理设备上运行?@Orkhan可能你的场景和视图有不同的大小/比例。提示:阅读场景的缩放模式。我启动了一个新的SpriteKit模板,用你的方法替换默认的didMoveToView
,宇宙飞船出现了。顺便说一句,myOtherSprite
的定义中有一个拼写错误,应该是“太空船”。你是在模拟器上运行还是在物理设备上运行?@Orkhan可能你的场景和视图有不同的大小/比例。提示:阅读有关场景缩放模式的内容。这会因为自动布局而增加,如果项目中的所有内容都是默认的,则场景大小将始终为600x600,以避免自动约束发生,我相信默认情况下场景大小相同,但不是100%确定,而且现在没有打开XCode来测试这会因为自动布局而增加,如果项目中的所有内容都是默认的,那么场景大小将始终为600x600,以避免自动约束发生,我相信默认情况下场景大小是相同的,但不是100%确定,而且现在没有XCode进行测试