1
我試圖根據用戶使用的設備使場景變成不同的大小,並且除了應用程序加載時的權利之外,此方法始終工作得很好。例如,應用程序加載和屏幕大小不正確,但是當我去到一個新的場景時,大小達到了它的設定。即使你回到起始場景,它也會是正確的大小。只有在應用程序第一次加載時纔會關閉,直到您進入新場景。這裏的代碼,任何幫助將不勝感激。調整SpriteKit場景的大小
- (void)viewDidLoad
{
[super viewDidLoad];
iphone4x = 1.2;
iphone4y = 1.4;
iphone5x = 1.1;
iphone5y = 1.18;
// Configure the view.
SKView * skView = (SKView *)self.view;
skView.showsFPS = NO;
skView.showsNodeCount = NO;
/* Sprite Kit applies additional optimizations to improve rendering performance */
skView.ignoresSiblingOrder = YES;
CGSize newSize;
if(iPhone4) {
newSize = CGSizeMake(skView.bounds.size.width * iphone4x, skView.bounds.size.height * iphone4y);
}
if (iPhone5) {
newSize = CGSizeMake(skView.bounds.size.width * iphone5x, skView.bounds.size.height * iphone5y);
}
if (iPhone6) {
newSize = CGSizeMake(skView.bounds.size.width, skView.bounds.size.height);
}
if(iPhone6Plus) {
}
// Create and configure the scene.
SKScene *scene = [MainMenu sceneWithSize:newSize];
scene.scaleMode = SKSceneScaleModeAspectFill;
// Present the scene.
[skView presentScene:scene];
}
您使用的是相同的代碼來呈現其它場景? – rakeshbs 2015-02-12 01:12:35
使用viewWillLayoutSubviews並考慮有scene.scaleMode – LearnCocos2D 2015-02-13 08:09:25