查看内部视图吃了相同的位置

时间:2016-04-28 20:24:31

标签: swift avplayer

Here is my simulator

这是我的代码:

{{1}}

videoView是我的故事板上的greenView,我想将视频放在绿色视图的相同位置

2 个答案:

答案 0 :(得分:1)

更改以下行

layer.frame = CGRectMake(0, 0, self.videoView.frame.width, self.videoView.frame.height)

制作原点0,0将解决您的问题。记住原点是基于SUPERview的左上角。所以avPlayer.frame必须与videoFrame的框架不同,因为它们具有不同的超视图。

答案 1 :(得分:0)

我没有理解你想要什么,但是假设你想要将图层放在videoView的相同位置。

layer.frame = CGRectMake(0, 0, self.videoView.frame.width, self.videoView.frame.height)

为什么?

我们在iOS中有界限和帧。它们几乎相同,都是表示为位置的矩形:(x,y)位置和(宽度,高度)大小。但是:

  • Bounds 相对于自己的坐标系(0,0);
  • 框架相对于超级视图;

您正在为videoView设置图层,因为videoView是图层的超级视图,因此您必须在第x帧中设置0 = 0和y = 0。