Ios MPMoviePlayerController重新启动而不是恢复

Ios MPMoviePlayerController重新启动而不是恢复,ios,ipad,video,mpmovieplayercontroller,Ios,Ipad,Video,Mpmovieplayercontroller,我试图让MPMoviePlayerController达到编程的endPlaybackTime,然后重新分配初始、当前和结束时间并“继续”播放 所以首先播放,比方说,从开始到4秒,停止/暂停,然后继续播放,从4秒到8秒,等等 但在我重新分配当前、初始和结束播放时间并运行[mplayer play]后,视频将从最初的时间(开始到4秒)重新启动并播放到最初的结束时间,即使调试消息在第二次播放后确认了新的时间 NSURL *fileURL = [NSURL fileURLWithPath:filepa

我试图让MPMoviePlayerController达到编程的endPlaybackTime,然后重新分配初始、当前和结束时间并“继续”播放

所以首先播放,比方说,从开始到4秒,停止/暂停,然后继续播放,从4秒到8秒,等等

但在我重新分配当前、初始和结束播放时间并运行[mplayer play]后,视频将从最初的时间(开始到4秒)重新启动并播放到最初的结束时间,即使调试消息在第二次播放后确认了新的时间

NSURL *fileURL = [NSURL fileURLWithPath:filepath];
_mplayer3 = [[MPMoviePlayerController alloc] initWithContentURL:fileURL];
_mplayer3.controlStyle = MPMovieControlStyleNone;
[_mplayer3.view setFrame: self.view.bounds];
[self.view insertSubview:_mplayer3.view belowSubview:_TopBrag];
_mplayer3.endPlaybackTime = 4.0;
[_mplayer3 setShouldAutoplay:NO];
[_mplayer3 prepareToPlay];
[_mplayer3 view].userInteractionEnabled=YES;
[[NSNotificationCenter defaultCenter] addObserver:self
                                             selector:@selector(parallaxDownDidFinish)
                                                 name:MPMoviePlayerPlaybackDidFinishNotification
                                               object:_mplayer3];
[_mplayer3 play];
在结束通知中,将创建一个手势识别器,该识别器似乎工作正常。在手势识别器中:

_mplayer3.initialPlaybackTime=_mplayer3.endPlaybackTime;
_mplayer3.currentPlaybackTime=_mplayer3.endPlaybackTime;
_mplayer3.endPlaybackTime+=4.0;
if (_mplayer3.endPlaybackTime > _mplayer3.duration)
    _mplayer3.endPlaybackTime = _mplayer3.duration;
[_mplayer3 play]
视频从0播放到4,而不是从4播放到8,尽管播放后的NSLog显示时间是所需的


感谢所有帮助

MPMoviePlayerController
如果未在新实例上使用,则不遵守
初始播放时间
。您需要释放并重新锁定/分配玩家才能使其工作。一旦玩家无法继续,你需要做的就是重用问题中显示的初始代码


更新:


由于您似乎热衷于保持播放器视图处于活动状态,并且没有使用标准用户界面,因此我建议您使用
AVPlayer
。它更加灵活,对于你的工作来说,它似乎是一个正确的选择。

我不确定是什么问题,因为它应该工作,我认为问题是你使用的是IOS 6,IOS 6不允许你做这么小的改变,但是如果你在刷卡时将初始播放时间更改为9或更高,它应该工作


试试看,然后告诉我;)

[\u mplayer3 pause]继续谢谢,但pause只是暂停了它(没有继续播放)谢谢你的帮助,但这似乎不起作用。由于我的视频长度约为12秒,我加入了一个示例视频,并测试了几个不同的参数,包括第一次播放时间为10秒,增量为10秒,尝试播放/暂停(上图),以及有/没有初始播放时间(下图)。例如,我还探索了如何使用[\u mplayer3 prepareToPlay]启动播放器,但我得到的唯一行为是从头开始播放相同的[0,first endPLaybackTime]intervalI测试到这个pourpouse,我找到了我告诉你的答案。。。。试着用30秒长的视频进行测试。。。测试一下我是如何告诉你的……谢谢,这是一个很好的解决办法,但在这种情况下,重新分配一个新的视频播放器会破坏美感,并且不准备用截图来掩盖过渡