我使用MPMoviePlayerController
播放视频。
下面是视频缩略图列表。当我按下一个缩略图时,我希望使用setCurrentPlaybackTime
跳转到视频的特定位置。
同时,我还有一个计时器,根据视频播放的位置更新所选缩略图,使用currentPlaybackTime
实现。
问题在于:当调用setCurrentPlaybackTime
时,播放器会先显示要前往的秒数,然后才跳转到指定的时间点。这需要几秒钟时间才能反映出新的时间。在此期间,用户体验非常差:按下一个缩略图后,它会被选中一段时间,然后计时器会更新到上一个缩略图,最后再跳回我选择的缩略图。
我尝试在计时器中使用以下代码:
if (moviePlayer.playbackState != MPMoviePlaybackStatePlaying && !(moviePlayer.loadState & MPMovieLoadStatePlaythroughOK)) return;
为了防止计时器在播放器处于从显示之前的缩略图到新缩略图的过渡阶段时更新所选的缩略图,但似乎并没有起作用。 "playbackState" 和 "loadState" 似乎完全不一致和不可预测。