我尝试在前奏完成时显示介绍和替换场景。但是,当电影完成时,应用程序崩溃[[CCDirector sharedDirector] replaceScene:[CCFadeTransition transitionWithDuration:0.5f scene:[MenuScene scene]]] ;.cocos2d和MPMoviePlayerController崩溃
代码是;
- (void) moviePlayBackDidFinish {
[self.moviePlayer stop]; [CCDirector sharedDirector] replaceScene:[CCFadeTransition transitionWithDuration:0.5f scene:[MenuScene scene]]];;} [ }
- (ID)初始 {
//随时拨打 “超级” 初始化 //苹果建议重新分配的 “自我” 与 “超级” 的返回值 IF((自我= [超级INIT])){// pencere boyutu埃尔德河ediliyor
NSURL * URL = [NSURL fileURLWithPath:[[一个NSBundle mainBundle] pathForResource:@ “前奏” ofType:@ “MP4”]]; self.moviePlayer = [[MPMoviePlayerController alloc] initWithContentURL:url];
//注册以在电影完成播放时收到通知。
[[NSNotificationCenter defaultCenter]的addObserver:自
选择器:@selector(moviePlayBackDidFinish :)
名:MPMoviePlayerPlaybackDidFinishNotification
对象:self.moviePlayer];
如果([self.moviePlayer respondsToSelector:@selector(setFullscreen:动画:)]){
//使用新3.2风格的API
self.moviePlayer.controlStyle = MPMovieControlStyleNone;
self.moviePlayer.shouldAutoplay = YES;
//这会在cocos2d中爆炸,所以我们将手动调整大小
// [moviePlayer setFullscreen:YES animated:YES];
[self.moviePlayer.view setTransform:CGAffineTransformMakeRotation((float)M_PI_2)];
CGSize winSize = [[CCDirector sharedDirector] winSize];
self.moviePlayer.view.frame = CGRectMake(0,0,winSize.height,winSize.width); //宽度和高度在旋转后交换
[[[CCDirector sharedDirector] openGLView] addSubview:self.moviePlayer。视图];
} else {
//使用旧的2.0风格API
self.moviePlayer.movieControlMode = MPMovieControlModeHidden;
[self。电影播放];
}
}
回归自我; }