Ios8 SpriteKit presentScene崩溃应用程序

Ios8 SpriteKit presentScene崩溃应用程序,ios8,sprite-kit,Ios8,Sprite Kit,我使用以下代码在SK场景之间导航: SKScene *newScene = [[MyScene alloc] initWithSize:self.size state:state]; float duration = 1; SKTransition *transition = [SKTransition fadeWithDuration:duration]; [self.view presentScene:newScene t

我使用以下代码在SK场景之间导航:

        SKScene *newScene = [[MyScene alloc] initWithSize:self.size state:state];

        float duration = 1;

        SKTransition *transition = [SKTransition fadeWithDuration:duration];

        [self.view presentScene:newScene transition:transition];
无论我试图呈现何种类型的场景,每次使用EXC_BAD_访问(代码1)时,应用程序都会崩溃,没有任何僵尸。。看起来“当前场景在xcode6上无法正常工作,它在我从xcode5升级之前就已经正常工作了。”


编辑:这是initWithSize代码:

-(id)initWithSize:(CGSize)size state:(GameState)state{
    if (self = [super initWithSize:size]) {

    [self setupScene];

    if (state == GameStateLaunch) {

        [self setupLoadingScreen];

        [self switchToLaunch];

    } else if (state == GameStateTutorial || state == GameStateReplay) {

        [self switchToTutorial];

    } else if (state== GameStateMainMenu) {


        [self switchToMainMenu];
    }

}
    return self;
}
在呈现新场景之前,我移除了所有儿童,从而部分实现了这一点:

- (void)cleanUpChildrenAndRemove {
    for (SKNode *child in self.children) {
        [child removeFromParent];
    }
    [self removeFromParent];
}

但是,这太疯狂了。一定有更好的解决方案!

你能发布initWithSize:state:method吗?正在传递的状态对象是什么?显然,一条消息正在发送到解除分配场景中的对象。场景外是否有任何东西与其中的对象交互?你是否在使用NSTimer发送混乱到子节点的年龄?尝试使用异常断点,它可能有助于准确确定导致异常的行。我对新场景不做任何操作…这是一个简单的转换,应该可以正常工作。我目前正在运行xcode6+SpriteKiti。这不是关于新场景,而是关于您正在转换的旧场景。发布crash消息,调用堆栈/突出显示发生崩溃的行