0
  • 我有一个UIScrollView *myScrollView包含UIView *videoViewa AVPlayerLayer *playerLayer(实际上是 aPBJVideoView如果有人熟悉的话)
  • AVPlayerLayer 设置为AVLayerVideoGravityResizeAspect.
  • myScrollView 的委托- (UIView *)viewForZoomingInScrollView:(UIScrollView *)scrollView返回videoView

因此,如果我在纵向 iPhone 上观看横向视频,它会适合视频,使宽度与 iPhone 相匹配,并且顶部和底部都是黑色的。

由于zoomScale高于 1.0,视频似乎偏向右侧。就像anchorPoint是也许(0.75,0.5)——即使它是(0.5,0.5)。换句话说,它放大到中心右侧的一个点。(更改锚点似乎没有任何影响)

是否有AVPlayerLayer导致此问题的原因?我对 a 没有同样的问题UIImageView

4

1 回答 1

0

事实证明,这与 AVPlayerLayer 关系不大,而与 UIScrollView 的 viewForZoomingInScrollView 关系更大。

我有一个 UIImageView,它是在视频下载/加载时显示的“预览图像”,两个视图都是滚动视图的父级,然后在视频播放器准备好时删除了图像视图。因此,contentSize/contentOffset 处于关闭状态。

我可以通过从滚动视图中删除 videoView 来修复它。将内容偏移量和 zoomScale 重置为 1,然后在视频视图中重新添加。

于 2015-08-14T19:33:53.577 回答