我有一個AVPlayer,它位於CollectionView單元格內,位於UICollectionView內部,位於collectionview單元格內。嵌套AVPlayer全屏?
我想動畫AVPlayers框架,以適應整個屏幕,但是本質上是因爲我無法訪問主的CollectionView keywindow層次的全屏過渡...
這是我的代碼迄今爲止試圖訪問全屏界面。
let window = UIApplication.shared.keyWindow!
let v = UIView(frame: CGRect(x: -(window.frame.origin.x), y: (window.frame.origin.y)/2, width: (window.frame.width)/2, height: (window.frame.height)/2))
UIView.animate(withDuration: 1, delay: 0, options: UIViewAnimationOptions.curveEaseOut, animations: {
self.playerView?.bounds = v.bounds
self.layoutIfNeeded()
}, completion: { (completed) in
})
這個目前的功能是將playerView掩蓋到單元格中嵌套collectionView的邊界。這導致我相信,因爲該方法可能是不可行的。
我希望會有像AVPlayer.fullscreen()或類似的東西,因爲我知道有可能使用AVPlayerControllers覆蓋視圖來獲得全屏視頻,但我不希望用戶不得不按下按鈕來去全屏。我更喜歡我目前只是點擊視頻的方法。
任何建議?
我可以使動畫過渡? – Stefan
更好的問題是,當你說從單元格中移除AVPlayerLayer時,你的意思是將它從單元格中完全移除,然後在rootView中創建它的新實例。因爲如果我這樣做,當我將它放在根視圖中時,我如何訪問AVPlayerLayer的前一個位置。 (如果可能的話,我想將它從之前的位置移動到全屏,反之亦然)。 – Stefan