Sprite kit 精灵套件的坐标顺序相反

Sprite kit 精灵套件的坐标顺序相反,sprite-kit,Sprite Kit,我以前没有遇到过这个问题,所以我想知道这是否是一个bug NSLog(@"%f %f", self.frame.size.height, self.frame.size.width); 他给了我 768.000000 1024.000000 我的应用程序只设置为允许肖像模式。什么???您一定在使用SpriteKit。您需要确保使用self.size=self.frame.size调整屏幕大小在您使用的类的initWithSize:(CGSize)size方法中(默认为GameSecene)

我以前没有遇到过这个问题,所以我想知道这是否是一个bug

NSLog(@"%f %f", self.frame.size.height, self.frame.size.width);
他给了我

768.000000 1024.000000

我的应用程序只设置为允许肖像模式。什么???

您一定在使用SpriteKit。您需要确保使用
self.size=self.frame.size调整屏幕大小
在您使用的类的
initWithSize:(CGSize)size
方法中(默认为GameSecene)

基本上:

-(id)initWithSize:(CGSize)size {    
if (self = [super initWithSize:size]) {
    /* Setup your scene here */

    self.size = self.frame.size;

    // Your code here

    };
return self;
}

对于GameSecene.m中的Xcode 6,请执行以下操作:

-(void)didMoveToView:(SKView *)view {

 /* Setup your scene here */

    self.size = self.view.frame.size;


}

除非您正确设置场景的缩放模式,否则设备的方向和场景的尺寸是独立的。@0x141E my viewcontroller.m具有
scene.scaleMode=SKSceneScaleModeAspectFill
,这不正确吗?如果您的场景是从
sks
文件加载的,您可以更改文件中的大小。我更改了sks尺寸,但没有更改任何内容。我尝试了所有的缩放模式。我想这可能与屏幕大小没有及时更新有关。这个链接可能会有所帮助。