我有一个UIView
,里面有一个AVPlayer
,用来播放视频.当改变方向时,我需要改变视频的大小和位置.
我对调整图层大小不是很有经验,所以我在调整视频大小时遇到了问题.
我首先创建AVPlayer
并将其播放器添加到我的videoHolderView图层:
NSURL *videoURL = [NSURL fileURLWithPath:videoPath];
self.avPlayer = [AVPlayer playerWithURL:videoURL];
AVPlayerLayer* playerLayer = [AVPlayerLayer playerLayerWithPlayer:self.avPlayer];
playerLayer.frame = videoHolderView.bounds;
playerLayer.videoGravity = AVLayerVideoGravityResizeAspect;
playerLayer.needsDisplayOnBoundsChange = YES;
[videoHolderView.layer addSublayer:playerLayer];
videoHolderView.layer.needsDisplayOnBoundsChange = YES;
然后,在稍后,我更改videoHolderView帧的大小和位置:
[videoHolderView setFrame:CGRectMake(0, 0, 768, 502)];
在这一点上,我需要的avPlayer调整到这些相同的尺寸.这并不是自动发生的——avPlayer在videoHolderView中保持较小的尺寸.
如果有人能帮忙,我真的很感激任何建议.
谢谢大家.