我试图在仅支持横向模式的iPad应用程序中用瓷砖填充我的SKScene.在场景中,我发现了h&这样的:
int h = [UIScreen mainScreen].bounds.size.height; int w = [UIScreen mainScreen].bounds.size.width;
不幸的是,发回的尺寸与他们需要的尺寸相反.在视图控制器或视图的内容中讨论此问题有很多主题,解决方案似乎是在viewWillAppear中检测屏幕大小,而不是在viewDidLoad中.但是,这似乎不是SKScenes的有效解决方案.
有什么建议?
解决方法
尝试,而不是使用viewDidLoad并使用它
- (void)viewWillLayoutSubviews { [super viewWillLayoutSubviews]; SKView * skView = (SKView *)self.view; if (!skView.scene) { skView.showsFPS = YES; skView.showsNodeCount = YES; SKScene * scene = [MyScene sceneWithSize:skView.bounds.size]; scene.scaleMode = SKSceneScaleModeAspectFill; // Present the scene. [skView presentScene:scene]; } }