2016-05-03 1 views
0

В моем приложении tvOS я играю только поток аудио, без определенной длины. То, что я нахожу, - это временной шкал в нижней части индикаторов времени отображения экрана (слева и справа), только мерцание между 0:00 и временем, за которое идет поток.tvOS скрывает время, не теряя аудио меню?

Два варианта, которые я ищу, либо говорят AVPlayerViewController, чтобы не отображать время или каким-то образом маскировать временную шкалу, но не теряя аудио-меню в верхней части экрана. Может ли кто-нибудь предложить подходящее решение?

Я должен отметить, что я тестировал это только в эмуляторе, использующем tvOS 9.2.

код у меня есть на данный момент:

class StreamPlayerViewController: AVPlayerViewController 

    var playerItem:AVPlayerItem? 
    var playerLayer:AVPlayerLayer? 
    override func viewDidLoad() { 
     let videoURL = NSURL(string: "http://example.org/aac.m3u") 
     playerItem = AVPlayerItem(URL: videoURL!) 
     self.player=AVPlayer(playerItem: playerItem!) 

     self.playerLayer=AVPlayerLayer(player: player) 

     self.player?.play() 
    } 

    // hides controller, but also lose access to audio menu 
    override func viewDidAppear(animated: Bool) { 
     self.playerLayer?.frame=self.view.frame 
     self.playerLayer?.backgroundColor=UIColor.blackColor().CGColor 
     self.view.layer.addSublayer(self.playerLayer!) 
    } 

} 

ответ

0

Решение у меня есть на данный момент является расширение AVPlayer и переопределить функцию CURRENTTIME:

class CustomAVPlayer : AVPlayer { 
    override func currentTime() -> CMTime { 
     return CMTime(value: 0, timescale: 60) 
    } 
} 

Хотя это не скрывает строку времени , он гарантирует, что значения времени остаются на нуле, не препятствуя доступу к настройкам воспроизведения.

Смежные вопросы