gpt4 book ai didi

ios - 更改约束常量后是否需要 setNeedsLayout 和 layoutIfNeeded?

转载 作者:技术小花猫 更新时间:2023-10-29 10:28:22 31 4
gpt4 key购买 nike

在 iOS 上,是否有必要在以编程方式更改约束常量后进行任何 API 调用(例如 setNeedsLayoutlayoutIfNeeded)?在我的用例中,我对动画变化不感兴趣。我相信存在一些错误(例如:this one),调用这些函数是一种解决方法。但除了那种边缘情况,我不需要在我的代码中调用它们。这是偶然发生的,还是有明确的来源提到更改约束常量时要做什么?

几个 SO 答案(herehere)说设置常量应该足够了,但没有任何支持引用。

Apple 的 iOS 自动布局指南除了在 animation block 中没有提及任何内容。 . cocoa Auto Layout Release Notes请务必说明调用 setNeedsLayout 是不必要的,除非您在自定义 View 中也覆盖了 layout。但是,该文档似乎是特定于 OSX 的。

最佳答案

如果想立即获得正确的 View 帧,您应该手动调用这些API。 (例如获取动画开始/结束帧)或者我们不需要手动调用这些 API。

我使用 MASConstraint 框架,我从不调用这些 API。

我不确定当您添加/删除约束但不更新约束时是否有必要。 :(

关于ios - 更改约束常量后是否需要 setNeedsLayout 和 layoutIfNeeded?,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/28906865/

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