更改父级后,SKSpriteNode不会运行Action

时间:2014-09-06 14:09:35

标签: sprite-kit skspritenode

在对几乎所有事情进行测试之后,我希望你们中的某个人有了一个想法。

这是一个复杂的应用程序,所以我希望我得到所有相关的部分:

我希望通过SKNode来“翻页”,其中包含一些SKSpriteNodes。 分页后,子节点不会对runAction:作出反应。

分页: 要翻页,我使用UIPanGestureRecognizer

当前“页面”= SKNode *currentForegroundNode。 下一个“页面”= SKNode *nextForegroundNode

(recognizer.state == UIGestureRecognizerStateChanged) {..}我正在移动当前&下一页。 (工作)

(recognizer.state == UIGestureRecognizerStateEnded) {...}

中的

SKAction *moveNextForegroundToFront = [SKAction moveToX:0 duration:0.2f];
        [self.nextForegroundNode runAction:moveNextForegroundToFront completion:^{

[self.currentForegroundNode removeAllChildren];
[self.nextForegroundNode enumerateChildNodesWithName:@"node_1" usingBlock:^(SKNode *node, BOOL *stop) {
//Node is kind of class SKSpriteNode
       [node removeFromParent];
       [self.currentForegroundNode addChild:node];
       }
    }];
    [self.nextForegroundNode removeAllChildren];
    [self.nextForegroundNode removeFromParent];
    self.nextForegroundNode = nil;
}

在此之后,一切看起来都很好。但我不能在iOS7的self.currentForegroundNode的子节点上运行任何动作!安装iOS8后,它可以正常工作。

0 个答案:

没有答案