【问题标题】:Transitioning AVplayer in modal transition在模态转换中转换 AVplayer
【发布时间】:2016-02-28 08:57:45
【问题描述】:

我们正在尝试实现与 Facebook 应用程序中相同的效果,即点击提要中的视频并将同一视频同时转换为模态视图。

如何将 AVplayer 从 uitableviewcell 无缝过渡到 uiviewcontroller 的新实例?

【问题讨论】:

    标签: ios objective-c uiviewcontroller avplayer


    【解决方案1】:

    我通过实现UIViewControllerTransitioningDelegate 并使用我自己的符合UIViewControllerAnimatedTransitioning 协议的自定义动画对象来实现这一点。

    我使用https://github.com/recruit-mp/RMPZoomTransitionAnimator 作为参考,并进行了一些修改以在源和目标UIViewControllers 之间移动实际视图(不是快照):

    在 animator 对象中,使用 animator 对象的“源框架”、“目标框架”和“playerView”的委托方法,所有这些都在“to”和“from”视图控制器上实现,我抓取包含播放视频,抓住它的开始帧,它的结束帧,并正确地将视图从其开始帧动画到最终位于“to”视图控制器上的帧。

    转换完成后,我将播放视频UIView 作为子视图添加到目标视图控制器,使其成为“目标”视图控制器视图的一部分,可用于交互等。

    【讨论】:

    • 拒绝您的回答,因为它与 OP 在他的询问中所说的在带有视频的视图控制器之间无缝转换无关。
    • Stephen,它与它有关 - 我使用此协议允许我访问“从”视图控制器上的 AVPlayerView 的框架,并将其动画到“到”上的最终位置视图控制器,它们都可以在UIViewControllerTransitioningDelegate 协议使用的动画对象中访问。我是 OP,您可以在我们的应用程序中看到我如何使用自己的答案的示例,您可以在 comedy.com 下载该示例。我认为您在投反对票之前并没有想太多……您能更清楚一点,并就为什么给我们一些有效的论据吗?
    • 我很抱歉。没想到你是OP我不记得您曾经像过去两段那样详细说明答案。如果以前在那里,我一定错过了。我会收回它。我对你们传递玩家的经验有疑问,但我将在 SO 中创建另一个关于它的线程。随意提出任何想法。
    • 嘿@StephenPaul,一切都很好,那天我有点沮丧,所以我很抱歉回答有点小气:) 无论如何,我很乐意尽我所能提供帮助:) 让我知道!
    • 我无法使用 AVPlayerViewController。看起来视频视图在整个过渡过程中都具有最终的全屏尺寸(即,它不支持对视频的尺寸进行动画处理)。我想我需要放弃 AVPlayerViewController 并直接使用 n AVPlayerLayer...
    猜你喜欢
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 1970-01-01
    • 2015-05-22
    • 1970-01-01
    • 1970-01-01
    • 2017-09-02
    • 1970-01-01
    相关资源
    最近更新 更多