0

ひ!プロジェクトでビデオを再生するために SKVideoNode を使用しています。問題は、それを止めて現在のアクションに戻ろうとすると、うまくいくこともあればうまくいかないこともあります。

これが私がプレイするコードです。前もって感謝します。

SKAction *actionPlayVideo = [SKAction runBlock:^{
     SKVideoNode *introVideoLevel1 = [SKVideoNode     videoNodeWithVideoFileNamed:@"escenario_intermedio.mov"];
    introVideoLevel1.position = CGPointMake(CGRectGetMidX(self.frame),CGRectGetMidY(self.frame));
    [introVideoLevel1 setName:@"IntroVideo"];
    introVideoLevel1.size = CGSizeMake(ipad_2_width, ipad_2_height);
    [self addChild: introVideoLevel1];
    [introVideoLevel1 play];
    }];

SKAction *actionStopVideo = [SKAction runBlock:^{
    dispatch_async( dispatch_get_global_queue(DISPATCH_QUEUE_PRIORITY_DEFAULT, 0), ^{
        usleep(6900000);
        //[[self childNodeWithName:@"IntroVideo"] stop];
        [[self childNodeWithName:@"IntroVideo"] removeFromParent];
    });
}];

[self runAction:[SKAction sequence:@[actionPlayVideo, actionStopVideo]]];
4

1 に答える 1

0

解決しました!play と stop の間に別のアクション (waitTime) を追加し、dispatch_async と usleep を削除しました

于 2014-05-11T02:34:58.883 に答える