我有一个带有TabBarController的应用程序,它包含两个带有NavigationController的TabBars。
在第一个标签栏中,我有一个包含一些按钮的ViewController。其中一个按钮使用户可以播放视频。目前一切运行良好。
我的问题是,当正在播放视频并且我移动到第二个TabBar时,视频继续播放(我听到声音),然后如果我回到第一个TabBar(其中有我的按钮)应用程序没有任何通知就崩溃了。
我不明白这是一个记忆问题还是别的什么。
有什么建议吗?
以下是使用的功能:
-(IBAction)playMovie:(id)sender
{
videoView = [[UIViewController alloc]initWithNibName:@"video" bundle:nil];
videoView.title = @"title";
NSString *urlStr = [[NSBundle mainBundle] pathForResource:@"video.mp4" ofType:nil];
NSURL *url = [NSURL fileURLWithPath:urlStr];
moviePlayerController = [[MPMoviePlayerController alloc] initWithContentURL:url];
[[NSNotificationCenter defaultCenter] addObserver:self
selector:@selector(moviePlaybackComplete:)
name:MPMoviePlayerPlaybackDidFinishNotification
object:moviePlayerController];
testbtnAppDelegate *appDelegate = (testbtnAppDelegate *)[[UIApplication sharedApplication] delegate];
videoView.view=moviePlayerController.view;
[moviePlayerController play];
[appDelegate.navController pushViewController:videoView animated:YES];
}
- (void)moviePlaybackComplete:(NSNotification *)notification
{
moviePlayerController = [notification object];
[[NSNotificationCenter defaultCenter] removeObserver:self
name:MPMoviePlayerPlaybackDidFinishNotification
object:moviePlayerController];
[moviePlayerController.view removeFromSuperview];
[moviePlayerController release];
}
答案 0 :(得分:0)
[movie PlayerController pause];
在你进入第二个标签暂停之前。