我有一个应用程序,我在其中一个选项卡中实时播放电视频道。我正在使用MPMoviePlayerViewController
。我在我的头文件中声明了MPMoviePlayerViewController
,并将其合成到我的实现文件中。MPMoviePlayerViewController在几秒钟后停止
这里是我的viewDidAppear:
- (void)viewDidAppear:(BOOL)animated
{
NSURL *movieURL = [[NSURL alloc]initWithString:@"http://mysuperURL"];
moviePlayerController = [[MPMoviePlayerViewController alloc] initWithContentURL:movieURL];
[self checkIt];
}
而且我checkIt功能
- (void) checkIt {
if ([[moviePlayerController moviePlayer] loadState] == MPMovieLoadStateUnknown) { // before you wreck yourself
[NSTimer scheduledTimerWithTimeInterval:0.1 target:self selector:@selector(checkIt) userInfo:nil repeats:NO];
} else {
[moviePlayerController setModalTransitionStyle:UIModalTransitionStyleCrossDissolve];
[self presentModalViewController:moviePlayerController animated:YES];
}
}
不过两秒后的视频冻结和应用程序停止响应。
什么checkIt方法呢? – Maulik
你为什么使用[NSTimer scheduledTimerWithTimeInterval:0.1 target:self selector:@selector(checkIt)userInfo:nil repeatats:NO];? – iMOBDEV
checkit方法控制电影是否处于可播放状态。如果电影不处于可播放状态,则等待0.1秒(nstimer)并再次重新调用checkit方法。 –