【发布时间】:2017-08-26 18:31:35
【问题描述】:
我正在尝试以编程方式将视频限制在页面中心。我的 AV 控制器叫avPlayerController。
我已经给出了它的 x 和 y 值以及宽度和高度:
avPlayerController.view.frame = CGRect(x: 36 , y: 20, width: 343, height: 264)
那么我该如何居中呢?
我已经试过了:Programmatically Add CenterX/CenterY Constraints
但是,你可以猜到它不起作用:(
这是我的代码:
super.viewDidLoad()
let filepath: String? = Bundle.main.path(forResource: "rockline", ofType: "mp4")
let fileURL = URL.init(fileURLWithPath: filepath!)
avPlayer = AVPlayer(url: fileURL)
let avPlayerController = AVPlayerViewController()
avPlayerController.player = avPlayer
avPlayerController.view.frame = CGRect(x: 36 , y: 20, width: 343, height: 264)
// hide/show control
avPlayerController.showsPlaybackControls = false
// play video
avPlayerController.player?.play()
self.view.addSubview(avPlayerController.view)
avPlayerController.view.centerYAnchor.constraint(equalTo: view.centerYAnchor).isActive = true
【问题讨论】:
-
设置框架与设置约束不同。布局其实是在viewDidLayoutSubviews中完成的
-
这不是你问了很多问题,你是在删除问题并重新提问!两个小时前你问这个,就像@Pruthvikar,我评论说你不应该设置框架。我还详细说明了要做的三件事,you 回复了要求代码。我可以这样做,但你也会删除这个问题吗?
-
很抱歉我不会保证