2010-03-04 3 views
0

원격 위치에서 사용할 수있는 비디오 파일을 재생해야하는 경우가 있습니다.MPMoviePlayerController에서 비디오 다운로드를 중지하는 방법

URL을 MPMoviePlayerController 인스턴스에 전달하고 메소드 재생을 호출했습니다.

이제 영화가 다운로드됩니다. 영화가 완전히로드되고 다시 rootview로 돌아 오기 전에 "완료"버튼을 클릭했습니다.

MPMoviePlayerPlaybackDidFinishNotification 알림이 호출되었습니다. 나는 비디오를 중단하고 플레이어를 릴리스했습니다. 여기, 여전히 비디오는 또한 오디오를들을 수 백그라운드에서로드 및 스피되는 코드

- (void)movieDidFinish:(NSNotification *)aNotifciation 
{ 

    [self.moviePlayer stop]; 

    [self removeActivityIndicatorView]; 

    [self.tableView reloadData]; 

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

    [moviePlayer release]; 

    moviePlayer = nil; 

} 

입니다하지만.

이렇게해서는 안됩니다.

누구든지 해결책을 제공 할 수 있습니까?

답변

1
[movieplayer stop]; 
movieplayer.initialPlaybackTime = -1.0; 
[movieplayer release]; 

초기 재생 시간을 -1로 설정하면 문제가 해결됩니다.

+0

나를 위해 작동하지 않습니다 ... –

0

MPMoviePlayerController가 끝날 때 보내는 NSNotification에 등록해야합니다. 다음은 그 예이다 :

[[NSNotificationCenter defaultCenter] 
    addObserver:self 
     selector:@selector(movieFinishedCallback:)             
      name:MPMoviePlayerPlaybackDidFinishNotification 
     object:player]; 

좋은 장소는 그 메인의 ViewController 클래스의 "viewDidLoad에"내부에 넣어.

"movieFinishedCallback :"(NSNotification 객체가 인수로 전달되면, 원하는 경우 해당되는 마무리 유형에 대한 자세한 정보를 찾을 수 있습니다) 단순히 movieplayercontroller를 닫으십시오.

관련 문제