第二次使用时,iOS委托问题

时间:2016-02-01 00:58:30

标签: ios objective-c

我不是一位经验丰富的应用开发者,我正在修改一个obj c spriteKit游戏。我需要实现的概念是,当用户单击菜单场景中的按钮(SKScene)时,与导航控制器“对话”并显示他们给我的另一个故事板。

为此,我使用场景中的代表,以便与游戏视图控制器的导航控制器“对话”并引用其他故事板。

一切正常,但是从起始场景(代码中的EndGameScene)开始,用户进入了gamescene,然后返回,然后它不起作用。并且没有错误消息!

GameViewController.m

SKView * skView = (SKView *)self.view;
skView.ignoresSiblingOrder = YES;
_scene = [[EndGameScene alloc] initWithSize:self.view.frame.size];
_scene.scaleMode = SKSceneScaleModeAspectFill;
self.scene.delegate = self;
// Present the scene.
[skView presentScene:_scene];
...
//delegation method
-(void)showDifferentView {
UIStoryboard *storyboard = [SettingsViewController settingsStoryBoard];
SettingsViewController *controller = [storyboard instantiateViewControllerWithIdentifier:SettingsControllerStoryboardIdentifier];
[self.navigationController pushViewController:controller animated:YES];
self.navigationController.navigationBarHidden = NO;
}

GameScene.m

-(void)backToHomePage{
[self removeAllChildren];
[self removeAllActions];
[self removeFromParent];

SKScene *endGameScene = [[EndGameScene alloc] initWithSize:self.size];
endGameScene.scaleMode = SKSceneScaleModeAspectFill;
GameViewController *gameVC = [[GameViewController alloc] init];
endGameScene.delegate = gameVC; //when add that line crashes
SKTransition *reveal = [SKTransition fadeWithDuration:0];
[self.view presentScene:endGameScene transition:reveal];
}

如果我不去GameScene就没问题。问题是当用户进入GameScene并返回时。

我将不胜感激任何帮助

由于

0 个答案:

没有答案