ZFPLayer 是一款强大开源的视频播放器,在结合列表播放滑动超出当前视频范围调用 addPlayerViewToSmallFloatView开启小窗播放(类似画中画,但没有其强大和友好的交互)布局错误并且右上角的关闭按钮也没法关闭,错乱参考图如下:
1、样式错乱原因分析:
self.currentPlayerManager.view.autoresizingMask 以父视图为基础进行动态响应,而在 addPlayerViewToSmallFloatView 和 addPlayerViewToContainerView 等方法中将当前视频播放对象(self.currentPlayerManager.view)分别添加到 self.smallFloatView、self.containerView 等视图中没有移除之前的添加
解决方法:
添加(即调用:addSubview:self.currentPlayerManager.view)之前先移除 [self.currentPlayerManager.view removeFromSuperview]
2、小窗播放右上角关闭无效
解决方法:实现ZFPlayerControlView 对象的floatControlView.closeClickCallback 回调方法,在方法里面调用self.playManager.stop() 即可关闭
处理后最终效果如下图: