如何设置画中画的初始位置? (AVPictureInPictureController / AVPlayerViewController)
Posted
技术标签:
【中文标题】如何设置画中画的初始位置? (AVPictureInPictureController / AVPlayerViewController)【英文标题】:How to set initial position of Picture in Picture? (AVPictureInPictureController / AVPlayerViewController) 【发布时间】:2016-02-04 08:41:51 【问题描述】:对于默认模式,当用户启动画中画时,小窗口从最新位置开始(最新的点子窗口关闭位置)。
有没有办法设置起始位置,例如:左上、右上、左下、右下?
【问题讨论】:
【参考方案1】:无法设置AVPictureInPictureController
的起始位置。
确实没有理由设置位置(它将位于其他应用程序之上,而不是您自己的应用程序之上),并且用户可以随时更改它的位置,不受您的控制。
来自AVPictureInPictureController documentation:
如果应用以用户直接指示之外的方式调用画中画,它将被 App Store 拒绝。
另外,也不建议创建AVPictureInPictureController
的子类:
不要继承 AVPictureInPictureController。不支持覆盖此类的方法,并会导致未定义的行为。
无论如何,创建它的功能都需要使用私有 API,这肯定会被 Apple 拒绝。
【讨论】:
我想知道,我是否可以在像 youtube 一样滑动到右下角/底部后触发 pip,如果苹果认为这种用户交互是否为 pip,是否只有交互单击 pip 按钮? @turushan 即使您可以通过这种方式触发画中画,也没有公共 API 可以在所需位置启动画中画。而且,正如我所说,用户可以随时更改画中画的位置。以上是关于如何设置画中画的初始位置? (AVPictureInPictureController / AVPlayerViewController)的主要内容,如果未能解决你的问题,请参考以下文章