2016-04-01 38 views
1

Bir sergi için birkaç kısa filmi görüntülemek üzere bir uygulama geliştirdim, uygulama iPad'de tamamen işlevsel, ancak harici ekranda video son karede kalacaktır. görüntülenmesine dış denetim olarak iPad'i kullanmak istiyor, ancak kullanıcıların her zaman burada hiçbir video videoyuiOS Swift Uygulaması AVPlayerController harici ekranda çalışmıyor

let playerItem = AVPlayerItem(URL: NSURL(fileURLWithPath: videoPath!)) 
let player = AVPlayer(playerItem: playerItem) 
NSNotificationCenter.defaultCenter().addObserver(self, selector: #selector(VideoCollectionViewController.playerDidReachEnd(_:)), name: AVPlayerItemDidPlayToEndTimeNotification, object: playerItem) 

playerController.player = player 
self.presentViewController(playerController, animated: true) { 
    self.playerController.player!.play() 
} 

başlatmak için snippet'tir Yani

oynanır video seçim GUI bkz Ve gerekir sonuna ulaştığında çağrılan işlev.

func playerDidReachEnd(notification: NSNotification) { 
    NSNotificationCenter.defaultCenter().removeObserver(self) 

    playerController.player?.currentItem 
    playerController.dismissViewControllerAnimated(true, completion: nil) 
} 

video oynatıcı

ait "Bitti" düğmesini kullanarak durdurulursa Ayrıca uygulama ekranına geri düşmez geri düşeceği yüzden AVPlayerController görevden yapmak için herhangi bir hile var mı Uygulamama doğrudan her ekranda gösterilsin mi?

cevap

0

Cevabımı buraya yazmayı çoktan unutmuşum, bu soruna başka biri gelebilir.

Aşağıdaki kod playerDidReachEnd içine yerleştirilmeli, çok farklı değil, ancak oynatıcı tüm ekranlardan kaldırıldı.

playerController.dismissViewControllerAnimated(true, completion: nil) 
playerController.view.removeFromSuperview() 
self.presentedViewController?.dismissViewControllerAnimated(true, completion: nil)