设计:
ViewController(视图控制器): 包含一个播放器视图和一个容器视图。
播放器视图: 加载AVPlayer并在底部添加一个子视图(PlayerControlView)来加载播放器控件(播放/暂停/进度条/全屏等)。
PlayerControlView(播放器控制视图): 一个自定义的UIView,其包含了播放器控件的布局。
我可以正常加载AVPlayer和播放器控件(i.e. 非全屏模式下)。播放正常,所有控件也都能正常工作。
问题:
当用户点击播放器控件上的全屏图标时,我希望AVPlayer能够全屏。我可以通过改变播放器视图的框架(frame)和设置AVPlayerLayer的Zposition为100来实现AVPlayer全屏。
问题是,只有当我不对playerControlView进行任何更新操作(如拖动进度条或点击播放按钮等)时,AVPlayer才会一直保持在全屏状态。一旦滑块上的播放进度更新完成,AVPlayer就会退出全屏并返回到普通模式。
播放器控件没有重新定位到播放器视图的底部。它们仍然保持在之前的位置。在普通模式下,播放器控件能够根据方向的改变正确布局。
请问是否有人能够告诉我,我所采取的方法是否正确?如果不是,请建议实现AVPlayer完全功能播放器控件的正确设计。
提前感谢, Naveen