2012-10-08 25 views
10

Tôi có thể không diễn đạt tiêu đề của mình rất tốt, có thể chính xác hơn khi nói NSNotification của tôi không loại bỏ cảnh phim của tôi sau khi phát xong. Tôi đã tìm thấy những người khác với vấn đề này nhưng không có giải pháp, có vẻ như nó có thể là một vấn đề với iOS 6 đó là những gì tôi đang chạy.MPMoviePlayerController sẽ không tự động loại bỏ phim sau khi kết thúc phát (ios 6)

Sau khi phát xong video, bạn cần nhấn "Xong" để loại bỏ nhưng tôi muốn nó tự động loại bỏ vì tôi sẽ sử dụng MPMovieControlStyleNone khi tôi sắp xếp xong. Dưới đây là mã của tôi với các phần không sử dụng tước ra: '

#import "MovieViewController.h" 

@interface MovieViewController() 

@end 

@implementation MovieViewController 

@synthesize moviePlayer = _moviePlayer; 

- (IBAction)playMovie:(id)sender 
{ 
    NSURL *url = [NSURL fileURLWithPath:[[NSBundle mainBundle] 
             pathForResource:@"TestMovie" ofType:@"mov"]]; 
    _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:NO]; 
} 

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

    MPMoviePlayerController *player = [notification object]; 

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

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

@end` 

Trả lời

18

có vấn đề này cũng Để khắc phục trong moviePlayBackDidFinish chỉ cần thêm

trước khi tháo nhìn từ SuperView

+0

Cuối cùng, một dung dịch! Điều này làm việc hoàn hảo, cảm ơn bạn. – robertfiorentino

+0

Câu trả lời xuất sắc .. lên phiếu bầu .. –

+2

Tôi cần nó ngược lại. Tôi muốn MPMoviePlayerController không nên bị loại bỏ tự động. Người dùng có thể loại bỏ nó bằng nút * Xong * –

Các vấn đề liên quan