2016-01-20 45 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作为全屏元素,我们应该避免子类化这些东西。

如果有人足够聪明来处理这个问题:请告诉我如何。

相关问题