Iphone SpriteKit视图

Iphone SpriteKit视图,iphone,uiview,sprite-kit,Iphone,Uiview,Sprite Kit,在我的SpriteKit场景中,我有一个pauseView,它在场景上方显示一个UIView,在UIView上我在IB中创建了一个按钮来移除视图,但是当视图消失时,为了继续游戏,用户必须再次点击暂停按钮。有没有一种方法可以消除这种观点,重新开始游戏 用于显示子视图的暂停游戏方法: -(void)pauseGame { if (self.gameIsPaused == NO) { [self.view addSubview:pauseView]; self

在我的SpriteKit场景中,我有一个pauseView,它在场景上方显示一个UIView,在UIView上我在IB中创建了一个按钮来移除视图,但是当视图消失时,为了继续游戏,用户必须再次点击暂停按钮。有没有一种方法可以消除这种观点,重新开始游戏

用于显示子视图的暂停游戏方法:

-(void)pauseGame {

    if (self.gameIsPaused == NO) {
        [self.view addSubview:pauseView];
        self.gameIsPaused = YES;
        self.scene.view.paused = YES;
    } else {
        self.gameIsPaused = NO;
        self.scene.view.paused = NO;
    }
}
在暂停层:

- (IBAction)resume:(id)sender {
    [gameScene pauseGame];
    [self removeFromSuperview];
}

我认为应该是
[sender removeFromSuperview],而不是
self
。假设“pause layer”是SKNode的子类,而不是UIView子类


如果不是这样,请检查是否添加了两次暂停按钮。Ie可能是IB中的意外复制和粘贴。

暂停层(UIView的子类)被正确地解除,但游戏场景在我关闭暂停层后仍保持暂停状态,直到我再次点击暂停。我在pause方法中设置了一个断点,并且在发送“[GameSecene pauseGame]”时,似乎没有调用该断点method.GameSecene可能为零。经过大量的修改,我已经设法让GameSecene调用暂停方法,但问题是在出于某种原因关闭暂停层并重置
self.gamespaused
值和其他值后,游戏场景正在重新初始化。有没有一种方法可以让我保持对游戏场景的强烈引用,这样它就可以用正确的值正确地恢复?