【问题标题】:Multiple AVPlayers with AVPlayerLayers disappears second time push viewcontroller具有 AVPlayerLayers 的多个 AVPlayer 第二次推送视图控制器消失
【发布时间】:2011-09-22 14:33:32
【问题描述】:

我有一个带有四 (4) 个 AVPlayer 的视图控制器(以 AVPlayerLayers 为例,例如 APPLE)。

如果我弹出这个视图控制器并推送一个相同类型的新实例。我无法在一两个 AVPlayer 中播放视频。没有错误,代码运行良好,AVPlayerLayers 还说它有一个 superLayer。

最奇怪的是,如果我按下主页按钮,回到跳板并进入应用程序,所有视频播放器都像魔术一样开始播放。这就像它重新渲染视图树或其他东西。

任何提示或线索?

附言。我使用 loadValuesAsynchronouslyForKeys 等待资产准备就绪。

【问题讨论】:

  • 我也遇到了同样的问题,如果 rootViewController 有一个 AVPlayerLayer (w/ AVPlayers),然后我推送另一个 viewController,当我弹回 rootVC 时,无论videoGravity如何,视频都会被压缩财产。按照下面的解决方案解决了我的问题。

标签: iphone objective-c ios4 avfoundation avplayer


【解决方案1】:

我们遇到了类似的问题。以下答案导致解决方案: AVplayer not showing in ScrollView after 2-3 times

你必须调用:[AVPlayer replaceCurrentItemWithPlayerItem:nil];当您的视图控制器被卸载时。这可能很棘手,因为您可能已经添加了观察者或使用了 addBoundaryTimeObserverForTimes:queue:usingBlock:

在再次检查超级层时您必须小心:在确定您的视图是否仍附加到视图层次结构时,最好检查 uiview.window。

你的 菲尔

【讨论】:

    猜你喜欢
    • 1970-01-01
    • 2014-03-28
    • 1970-01-01
    • 1970-01-01
    • 2012-08-12
    • 2011-11-14
    • 2016-02-22
    • 2016-01-03
    • 2016-10-26
    相关资源
    最近更新 更多