2014-10-20 17 views
0

我正在开发一个使用iOS 8的Xcode 6.0.1的小游戏。我在网上找不到任何有用的东西,我尝试了一切。我需要一个解释,为什么我得到0.000而不是我正在开发的设备的像素宽度和高度。使用Swift获取SKScene的宽度和高度

为了让你知道我做了什么: 使用了self.frame.size.width,self.size.width等等。

override func didMoveToView(view: SKView) { 

    let testImage:SKSpriteNode = SKSpriteNode(imageNamed: "GamePreview3.png") 
    testImage.position = CGPointMake(self.size.width/2, self.size.height/2) 
    self.addChild(testImage) 

    NSLog("Width: %f", CGRectGetWidth(self.frame)) 
    NSLog("Height: %f", CGRectGetHeight(self.frame)) 

} 

Width: 0.000000 
Height: 0.000000 

是不是因为现在用新的Xcode引擎屏幕尺寸无关紧要了?

回答

2

我相信场景的框架始终是0大小的,因为它没有特定的“框架”(其内容不限于虚拟框架)。你应该使用场景的size属性,因为这会给你场景初始化的大小,这通常(但不一定是)SKView的大小。