在精灵套件中永远播放视频

时间:2015-03-02 16:38:33

标签: sprite-kit skvideonode

我在介绍场景中播放视频时出现问题。我已将我的视频添加到场景中并且播放正常。我只是希望它一次又一次地重复。是否有任何方法可以将此视频设置为在结束后自动播放?

这是我添加视频的方式:

SKVideoNode *videoNode = [SKVideoNode videoNodeWithVideoFileNamed:@"game1.m4v"];
videoNode.position = CGPointMake(150, 180);
videoNode.size = CGSizeMake(150, 150);
[self addChild:videoNode];
[videoNode play];

感谢任何帮助。

1 个答案:

答案 0 :(得分:6)

使用以下命令初始化您的SKVideoNode:

- (instancetype)initWithAVPlayer:(AVPlayer *)player

设置AVPlayer时使用:

avPlayer.actionAtItemEnd = AVPlayerActionAtItemEndNone; 

[[NSNotificationCenter defaultCenter] addObserver:self
                                         selector:@selector(playerItemDidReachEnd:)
                                             name:AVPlayerItemDidPlayToEndTimeNotification
                                           object:[avPlayer currentItem]];

这会阻止玩家在结束时暂停。

在通知中:

-(void)playerItemDidReachEnd:(NSNotification *)notification {
    AVPlayerItem *p = [notification object];
    [p seekToTime:kCMTimeZero];
}

这将回放电影。

(感谢Bastianthis question)的回答