我在介绍完成后尝试显示一个介绍和replaceScene。但是,当电影结束时,应用程序正在崩溃[[CCDirector sharedDirector] replaceScene:[CCFadeTransition transitionWithDuration:0.5f场景:[MenuScene scene]]] ;.
代码是;
- (void) moviePlayBackDidFinish {
[self.moviePlayer stop];
[[CCDirector sharedDirector] replaceScene:[CCFadeTransition transitionWithDuration:0.5f scene:[MenuScene scene]]]; }
- (id)init {
//总是调用“super”init // Apple建议使用“超级”返回值重新分配“self” if((self = [super init])){ // pencere boyutu elde ediliyor
NSURL * url = [NSURL fileURLWithPath:[[NSBundle mainBundle] pathForResource:@“intro”ofType:@“mp4”]]; self.moviePlayer = [[MPMoviePlayerController alloc] initWithContentURL:url];
//注册以在电影播放完毕后收到通知
[[NSNotificationCenter defaultCenter] addObserver:self
选择:@选择(moviePlayBackDidFinish :)
名称:MPMoviePlayerPlaybackDidFinishNotification
对象:self.moviePlayer];
if([self.moviePlayer respondsToSelector:@selector(setFullscreen:animated :)]){
//使用新的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.view];
其他{
//使用旧的2.0风格的API
self.moviePlayer.movieControlMode = MPMovieControlModeHidden;
[self.moviePlayer play];
}
}
回归自我; }
答案 0 :(得分:0)
这一行: 选择器:@selector(moviePlayBackDidFinish:)
应该是: 选择器:@selector(moviePlayBackDidFinish)
答案 1 :(得分:0)
CCScene * scene = [AboutLayer scene];
CCTransitionFade* transitionScene = [CCTransitionFade transitionWithDuration:0.1 scene:scene withColor:ccWHITE];
[[CCDirector sharedDirector] pushScene:transitionScene];