2016-01-20 60 views
1

我tvOS應用UI的一部分是最小化的(400像素寬度)AVPlayer和設置,通過它的幀設置爲所述窗口邊界調整大小的AVPlayer到全屏視圖按鈕:可以重寫displaysBegan()來最小化tvOS中的全屏AVPlayer嗎?

playerController.view.frame = CGRectMake(0, 0, self.view.frame.size.width, self.view.frame.size.height)

我是不是能夠在「關閉全屏」按鈕添加到全屏avplayer(這將是最好的解決方案),這就是爲什麼我重寫pressesBegan() - 方法與:

override func pressesBegan(presses: Set<UIPress>, withEvent event: UIPressesEvent?) 
    { 
     guard presses.first?.type == UIPressType.Menu else 
     { 
      super.pressesBegan(presses, withEvent: event) 
      return 
     } 

     // If not minimized, minimize it 
     if playerController.view.frame.size.width != 400 
     { 
      playerController.view.frame = minimizedVideoBounds 
     } 
    } 

問題

這是一個可能的,安全的,乾淨的,爲什麼實現我的用戶體驗目標或是一個應該避免不惜代價的骯髒的黑客?

回答

0

總之:不,它不是。我有奇怪的副作用。我認爲我們應該使用AVPlayerAVPlayerController作爲全屏元素,我們應該避免子類化這些東西。

如果有人足夠聰明來處理這個問題:請告訴我如何。

相關問題