MPMoviePlayerController をプログラムされた endPlaybackTime に到達させ、初期時間、現在時間、終了時間を再割り当てして再生を「再開」しようとしています。
つまり、最初に再生します。たとえば、開始から 4 秒まで再生し、停止/一時停止してから、再開して 4 秒から 8 秒まで再生します。
しかし、current、initial、および endPlaybackTimes を再割り当てして [mplayer play] を実行すると、デバッグ メッセージが 2 回目の再生後に新しい時間を確認しても、ビデオは元の時間 (開始から 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]
再生後の NSLogs は時間が望ましいものであることを示唆していますが、ビデオは 4 から 8 ではなく 0 から 4 で再生されます。
どんな助けにも感謝します