使用MPMoviePlayerController播放 音频流时
通过Slider改变播放时间
player.currentPlaybackTime = (NSTimeInterval)slider.value;
好像没有不起作用。。
暂时用
[player stop];
player.initialPlaybackTime = (NSTimeInterval)sender.value;
[player play];
这种看起来很脑残的问题解决。。
请问大家有遇到类似问题吗。。。HELP!
如果题主的的Slider是UISlider的话,那么由于slider.maximumValue最大值为1.0,您直接把player.currentPlaybackTime设置为slider.value的话,仅仅是把player设置为0.x秒的位置。当然,这是一个bug。另外还需要判断一下player的位置。还是直接上代码吧:)
在响应UISlider UIControlEventValueChanged或UIControlEventTouchUpInside事件的方法中:
NSTimeInterval currentTime = player.duration * (double)(slider.value / slider.maximumValue);
if (player.playbackState == MPMoviePlaybackStatePlaying) {
[player pause];
}
[player setCurrentPlaybackTime:currentTime];
正文完