在 UIViewController 中,我应该在 viewDidLoad 或 viewWillLayoutSubviews 中创建手动自动布局约束吗?

用户1615898

在 UIViewController 中,我应该在 viewDidLoad 或 viewWillLayoutSubviews(或其他一些方法)中创建手动自动布局约束吗?

桑迪普班达里

如果您希望您的约束只设置一次并希望它在整个 VC 生命周期中出现,请在ViewDidLoad.

我从未遇到过这样一种情况,您必须在 VC 的生命周期中多次调用viewWillLayoutSubviewsas来创建/应用约束,viewWillLayoutSubviews而粗心的代码可能会导致多次应用相同的自动布局约束,这将是灾难的完美秘诀您稍后尝试更新约束的常量值。

例子 :

如果错误地添加了两个类似的约束,并且您不知道它并且只持有对一个约束的引用,则更改它的常量值将导致其他约束中断。因此,viewWillLayoutSubviews并不是为我应用自动布局约束的好地方:)如果出于某些原因不惜一切代价,请确保最终不会添加重复约束。

或其他一些方法)?

这完全取决于您的要求,假设您希望仅在某些情况下应用某些约束,在这种情况下,您可以选择在需要时创建和应用约束,或者您可以在其中创建所有约束viewDidLoad,然后激活和停用这些约束你的需要。

本文收集自互联网,转载请注明来源。

如有侵权,请联系[email protected] 删除。

编辑于
0

我来说两句

0条评论
登录后参与评论

相关文章

Related 相关文章

热门标签

归档