gpt4 book ai didi

ios - AVPlayerViewController 和 View 的约束

转载 作者:行者123 更新时间:2023-11-29 11:58:42 28 4
gpt4 key购买 nike

我正在使用 AVPlayerViewController 开发我的第一个应用程序。我需要在 View 内部使用此类显示视频流。在屏幕截图上,此 View 具有深蓝色。在这个 View 下,我有 Label 和 UICollectionView。当我点击项目时,会显示视频,但此 View 的大小存在问题,大小已更改, View 下的标签变得不可见, View 顶部也有间隙。我使用 AutoLayout 设置约束并且它们是正确的,XCode 没有显示布局问题,但是在运行时点击项目以启动视频后,XCode 显示了很多约束错误。这就是布局的样子,没有错误或警告。

Layout

这是应用程序启动时的样子 app starts

当我点击 UICollectionView 的项目时,这是一个布局问题,因为您可以看到带有 Controller 的 AVPlayer 没有填充深蓝色 View (留下可用空间),也改变了它的大小,所以标签不可见。此 Controller 的按钮也不起作用,当我点击视频时它会出现。 problem with layout

这是我为 AVPlayerViewController 设置框架的代码,myView 是深蓝色 View 。

func collectionView(collectionView: UICollectionView, didSelectItemAtIndexPath indexPath: NSIndexPath) {

let url = NSURL(string:"http://devimages.apple.com/iphone/samples/bipbop/bipbopall.m3u8")
playerController.player = player
self.addChildViewController(playerController)
self.myView.addSubview(playerController.view)
playerController.view.frame = self.myView.frame
let playerItem = AVPlayerItem(URL: url!)
player.replaceCurrentItemWithPlayerItem(playerItem)
player.play()
}

这是执行此代码后输出中的错误:

Unable to simultaneously satisfy constraints. Probably at least one of the constraints in the following list is one you don't want. Try this: (1) look at each constraint and try to figure out which you don't expect; (2) find the code that added the unwanted constraint or constraints and fix it.

最佳答案

我在 Storyboard 上添加了 Container View、AVKit Player View Controller 而不是 View ,并在它们之间建立了连接,还向 ViewController 添加了代码:

let child = childViewControllers[0] as! AVPlayerViewController
child.view.clipsToBounds = true
child.player = player

现在可以了

关于ios - AVPlayerViewController 和 View 的约束,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/37991571/

28 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com