gpt4 book ai didi

ios - 如何在两个自动布局约束之间切换?

转载 作者:可可西里 更新时间:2023-11-01 03:10:02 25 4
gpt4 key购买 nike

我有两个 UI 布局约束,它们在设计上相互冲突。一次只能有一个处于事件状态。

UIViewController 的 方法updateConstraintsIfNeeded 中,我有以下代码根据数据模型的状态在两个约束之间切换。

override func updateConstraintsIfNeeded() {
super.updateConstraintsIfNeeded()

if question?.thumbURL != nil {
showAttachmentConstraint.active = true
hideAttachmentConstraint.active = false
} else {
showAttachmentConstraint.active = false
hideAttachmentConstraint.active = true
}
}

这按预期工作,但我在调试输出中收到了这个熟悉的警告:

Unable to simultaneously satisfy constraints. Probably at least one of the constraints in the following list is one you don't want. ...

显然,当语句 showAttachmentConstraint.active = true 被执行时,它暂时与当时仍处于事件状态的 hideAttachmentConstraint 发生冲突。

是否可以使这个切换操作成为原子操作?我希望 UITableView 中有类似 beginUpdateendUpdate 的东西。

最佳答案

您可以将其中一个冲突约束的优先级从 1000 改为 999。这样您在设计时就不会遇到任何问题。

关于ios - 如何在两个自动布局约束之间切换?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/33867839/

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