我需要在 UILabel 中显示使用MPMoviePlayerController播放的视频的当前进度。我需要在UILable中显示当前进度和视频的总持续时间。它应该看起来像1.25 / 5.00?我需要在播放视频时显示此信息。我可以直接使用默认进度栏显示它,但我需要禁用它。由于我无法禁用它,我计划在UILabel中显示视频的当前进度。有人可以就此提出任何建议吗?
答案 0 :(得分:3)
设置进度和持续时间,你可以在播放视频后调用自我观察者,然后更新进度标签的值......
你设置观察者以查看播放器何时开始播放,并且在选择器中呼叫观察者,这个观察者应该看起来像这样;
-(void)watcher{
urProgressLabel.text = [NSString stringWithFormat:@"%d",movieplayer.currentPlaybackTime];
[self performSelector:@selector(watcher) withObject:nil afterDelay:0.5];//to update the value each 0.5 seconds
}
希望它有所帮助;)
答案 1 :(得分:3)
得到答案......
实例化视频播放器...
self.moviePlayerController = [[MPMoviePlayerController alloc] initWithContentURL:fileURL];
//添加标签以显示视频的进度....
progressLabel = [[UILabel alloc]initWithFrame:CGRectMake(125,275,70,25)];
progressLabel.backgroundColor = [UIColor clearColor];
[progressLabel setTextColor:[UIColor whiteColor]];
[self.view addSubview:progressLabel];
//设置一个Timer ..
[NSTimer scheduledTimerWithTimeInterval:1.0f
target:self
selector:@selector(updatePlaybackTime:)
userInfo:nil
repeats:YES];
并在方法updatePlaybackTime:....
- (void)updatePlaybackTime:(NSTimer*)theTimer {
progressLabel.text = [NSString stringWithFormat:@"%f",self.moviePlayerController.currentPlaybackTime];
}
完成......我将使用视频的进度更新标签...
答案 2 :(得分:2)