2014-12-19 37 views
0

我已經實現了一個MPMoviePlayerViewController,加載視頻並正確解散播放器。但是當用戶在MPMoviePlayerViewController中點擊「完成」時我無法獲得通知。 我認爲這是一個ios8問題。這是代碼:MPMoviePlayerDidExitFullscreenNotification問題 - iOS8 - swift

func fullscreenVideo(){ 
    NSNotificationCenter.defaultCenter().addObserver(self, selector: "doneFull:", name: MPMoviePlayerDidExitFullscreenNotification, object: nil) 

    let url = NSURL(fileURLWithPath: self.videoPath) 
    self.fullscreenPlayer = MPMoviePlayerViewController(contentURL: url)   
    self.fullscreenPlayer!.view.frame = CGRect(x: 0.0, y: 0.0, width: 0.0, height: 0.0) 
    self.fullscreenPlayer!.moviePlayer.view.frame = CGRect(x: 0.0, y: 0.0, width: 0.0, height: 0.0) 
    self.fullscreenPlayer!.moviePlayer.controlStyle = MPMovieControlStyle.Fullscreen 
    self.fullscreenPlayer!.moviePlayer.repeatMode = MPMovieRepeatMode.One 
    self.fullscreenPlayer!.moviePlayer.allowsAirPlay = false 
    self.fullscreenPlayer!.moviePlayer.fullscreen = true 
    self.fullscreenPlayer!.moviePlayer.prepareToPlay() 
    self.presentViewController(self.fullscreenPlayer!, animated: true, completion: nil) 
    self.fullscreenPlayer!.moviePlayer.play() 
} 

func doneFull(notification:NSNotification){ 
    // When user tap "Done" the player closes but this function is not called. 
    println("CALLED") // Never called 
} 

任何建議?

回答

0
NSNotificationCenter.defaultCenter().addObserver(self, 
selector: "doneFull:", 
name: MPMoviePlayerDidExitFullscreenNotification, 
object: self.fullscreenPlayer!.moviePlayer) 

嘗試更換你的對象比零self.fullscreenPlayer!.movi​​ePlayer

你必須設置對象參數在這種情況下。