2013-07-04 3 views
0

Я разрабатываю приложение iOS, и я хочу воспроизвести видео, когда пользователь нажимает кнопку. Я разработал это, пользователь нажимает кнопку, и видео воспроизводится, но когда видео заканчивается, вид видео остается, и он застыл в последнем кадре видео.iOS-Xcode: Видео Воспроизведение заморожено в последнем кадре

Я поиск в Google, и я нашел этот вопрос:

iOS 6, Xcode 4.5 video not exiting when done playing

Я использовал код, написанный там, но я не зафиксировал его. Это мой код:

-(IBAction)reproducirVideo:(id)sender 
{ 
NSURL *url5 = [NSURL fileURLWithPath:[[NSBundle mainBundle] 
             pathForResource:@"instrucciones"  ofType:@"mp4"]]; 
_moviePlayer = [[MPMoviePlayerController alloc] 
        initWithContentURL:url5]; 

_moviePlayer.controlStyle = MPMovieControlStyleDefault; 
_moviePlayer.shouldAutoplay = YES; 
[self.view addSubview:_moviePlayer.view]; 
[_moviePlayer setFullscreen:YES animated:YES]; 
} 

-(void) moviePlayBackDidFinish:(NSNotification *)aNotification{ 
[_moviePlayer.view removeFromSuperview]; 
_moviePlayer = nil; 
} 


- (void)moviePlayerWillExitFullscreen:(NSNotification*) aNotification { 
[_moviePlayer stop]; 
[_moviePlayer.view removeFromSuperview]; 
_moviePlayer = nil; 
} 

ответ

1

Извините за неудобства, но я прочитал этот вопрос, и я просто установил его:

MPMoviePlayerController will not automatically dismiss movie after finish playing (ios 6)

Это правильный код:

- (IBAction)reproducirVideo:(id)sender 
{ 
NSURL *url = [NSURL fileURLWithPath:[[NSBundle mainBundle] 
            pathForResource:@"instrucciones" ofType:@"mp4"]]; 
_moviePlayer = 
[[MPMoviePlayerController alloc] 
initWithContentURL:url]; 

[[NSNotificationCenter defaultCenter] addObserver:self 
             selector:@selector(moviePlayBackDidFinish:) 
              name:MPMoviePlayerPlaybackDidFinishNotification 
              object:_moviePlayer]; 

_moviePlayer.controlStyle = MPMovieControlStyleDefault; 
_moviePlayer.shouldAutoplay = YES; 
[self.view addSubview:_moviePlayer.view]; 
[_moviePlayer setFullscreen:YES animated:YES]; 
} 

- (void) moviePlayBackDidFinish:(NSNotification*)notification { 

MPMoviePlayerController *player = [notification object]; 

[[NSNotificationCenter defaultCenter] removeObserver:self 
               name:MPMoviePlayerPlaybackDidFinishNotification 
               object:player]; 

if ([player 
    respondsToSelector:@selector(setFullscreen:animated:)]) 
{ 
    [player setFullscreen:NO animated:YES]; 
    [player.view removeFromSuperview]; 
} 
} 

СПАСИБО ЖАЗЕН !!! ВЫ СОХРАНЕНЫ МОЙ ЖИЗНЬ

С уважением