gpt4 book ai didi

ios - 无法同时满足 View Controller 的约束

转载 作者:行者123 更新时间:2023-11-29 11:40:19 25 4
gpt4 key购买 nike

我正在加载一个 View Controller ,它有一个可以采用不同大小的 View 。大小在“viewDidLayoutSubviews”中设置,并且可能因发送到 View 的参数而异。

我在我的 View 中使用了自动布局,它由 2 个标签组成(标题 + 错误)、一个表格 View 和两个并排的按钮(确认 + 取消)。

enter image description here

View 加载完美,但我仍然收到此消息:

* Xcode 对约束大喊大叫,然后指定哪一个似乎是问题所在 *

(
"<_UILayoutSupportConstraint:0x604000281040 _UILayoutGuide:0x7f84ce652de0.height == 0 (active)>",
"<_UILayoutSupportConstraint:0x604000289830 _UILayoutGuide:0x7f84ce652de0.bottom == UIView:0x7f84ce66fea0.bottom (active)>",
"<NSLayoutConstraint:0x60000048b630 UIButton:0x7f84ce4b3c60'Continuer'.height == 60 (active)>",
"<NSLayoutConstraint:0x6040002963a0 UILabel:0x7f84ce670bd0'Sexe'.top == UILayoutGuide:0x6040001b2520'UIViewSafeAreaLayoutGuide'.top + 5 (active)>",
"<NSLayoutConstraint:0x6040002967b0 V:[UILabel:0x7f84ce670bd0'Sexe']-(0)-[UILabel:0x7f84ce43a770'Error'] (active)>",
"<NSLayoutConstraint:0x60400028c4e0 V:[UILabel:0x7f84ce43a770'Error']-(5)-[UITableView:0x7f84ce850000] (active)>",
"<NSLayoutConstraint:0x60400028c3a0 V:[UITableView:0x7f84ce850000]-(0)-[UIButton:0x7f84ce4b3c60'Continuer'] (active)>",
"<NSLayoutConstraint:0x60400028f0a0 V:[UIButton:0x7f84ce4b3c60'Continuer']-(0)-[_UILayoutGuide:0x7f84ce652de0] (active)>",
"<NSLayoutConstraint:0x60000048cda0 'UIView-Encapsulated-Layout-Height' UIView:0x7f84ce66fea0.height == 0 (active)>",
"<NSLayoutConstraint:0x604000296670 'UIViewSafeAreaLayoutGuide-top' V:|-(0)-[UILayoutGuide:0x6040001b2520'UIViewSafeAreaLayoutGuide'] (active, names: '|':UIView:0x7f84ce66fea0 )>"
)

知道是什么约束导致了我这样的麻烦吗?(我可以发布完整的 Xcode 消息是有用的,但我不想发送垃圾邮件。)

最佳答案

我的问题是我在实例化 View 后在“viewDidLayoutSubviews”中设置 View 的高度。我正在使用“Presentr”库轻松实例化 View 。

我的问题与 Storyboard 中的限制无关。在使用 Presentr 进行演示之前,我通过指定 View 的高度设法解决了这个问题。为此,我做了一个协议(protocol),强制我的 Controller 有一个“getHeight”函数来获取它的高度,允许我做类似的事情

let customType = PresentationType.custom(width: .custom(size: Float(self.view.frame.width)), height: .custom(size: editProfileVC.getHeight()), center: .center)

你可以在这里看到,对于高度,我使用的是“editProfileVC.getHeight()”

我希望它也能帮助到其他人。

关于ios - 无法同时满足 View Controller 的约束,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/47014225/

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