虽然使用MPMoviePlayerController
有什么方法可以找到在缓冲视频的同时完成了多少数据百分比?MPMoviePlayerController%data bufferd
我的目标是显示进度条,显示已加载多少百分比并显示百分比的数字计数。
在此先感谢。
虽然使用MPMoviePlayerController
有什么方法可以找到在缓冲视频的同时完成了多少数据百分比?MPMoviePlayerController%data bufferd
我的目标是显示进度条,显示已加载多少百分比并显示百分比的数字计数。
在此先感谢。
您是否检查过MPMoviePlayerController
的Apple文档?
在这里,你可以找到两个属性,可以帮助你。 duration
和playableDuration
,这不是一个完全合适的,但非常接近。你需要实现的一件事是智能查询这些属性的方法,例如,也许你可能想要使用NSTimer
并每0.5秒从你的MPMovePlayerController
实例中获取信息。
例如,假设你有一个叫做MPMoviePlayerController
型myPlayer
财产,你将开始它在视图控制器等你的init方法...
然后其次是这样的:
self.checkStatusTimer = [NSTimer timerWithTimeInterval:0.5
target:self
selector:@selector(updateProgressUI)
userInfo:nil
repeats:YES];
而且这样的方法来更新UI:
- (void)updateProgressUI{
if(self.myPlayer.duration == self.myPlayer.playableDuration){
// all done
[self.checkStatusTimer invalidate];
}
int percentage = roundf((myPlayer.playableDuration/myPlayer.duration)*100);
self.progressLabel.text = [NSString stringWithFormat:@"%d%%", percentage];
}
注意双百分号我们-stringWithFormat
,这是另一种格式说明符,用于解析%
符号。有关格式说明符see here的更多信息。
您能否给我任何示例代码?我对这些东西不了解。我希望你不要打扰。 – 2012-08-03 14:17:06
我更新了答案以提供示例 – Daniel 2012-08-03 14:25:19
Hai daniel,我看到您的回复,我认为它工作正常。不幸的是,我正在使用一个类文件,现在可以尝试使用这些代码。无论如何感谢您的努力和善良。 – 2012-08-03 16:23:37