HTML5   发布时间:2022-04-27  发布网站:大佬教程  code.js-code.com
大佬教程收集整理的这篇文章主要介绍了ios – 如果在带有自动布局的IB中设置了视图,如果您尝试以编程方式更改其帧,会发生什么?大佬教程大佬觉得挺不错的,现在分享给大家,也给大家做个参考。
我开始帮助的项目之前没有使用自动布局,我正在更新它以使用自动布局和大小类.整个应用程序中有相数量的帧操作代码(例如直接设置框架而不是更改约束常量),我想知道这是如何影响使用自动布局约束设置的视图.

我正在努力消除代码的帧更改部分并将其更改为在需要时更新约束常量,但由于我还不是100%熟悉每个代码的工作原理,因此它对更好地了解自动布局和编码帧更改如何相互影响,以便如果视图在运行时没有正确显示,我可以更好地确定它是我设置的东西,还是某个需要的某个旧代码发现并更新.

解决方法

这很简单.你只需要了解自动布局是什么.

这是它的工作原理.约束只是一个指令列表;他们自己实际上并没有做任何事情.有一个系统消息layoutSubviews,它是在你无法控制的时刻发送的 – 所以你应该想象它可以随时发送.实际发送layoutSubviews时,会查询和遵守约束(通过执行您要执行的操作 – 也就是说,运行时设置每个视图的帧或边界和中心).

因此,您可以自由地更改视图的框架,但请注意,如果发送layoutSubviews并且约束不同意您设置的框架,则视图将跳回到约束所说的位置.

大佬总结

以上是大佬教程为你收集整理的ios – 如果在带有自动布局的IB中设置了视图,如果您尝试以编程方式更改其帧,会发生什么?全部内容,希望文章能够帮你解决ios – 如果在带有自动布局的IB中设置了视图,如果您尝试以编程方式更改其帧,会发生什么?所遇到的程序开发问题。

如果觉得大佬教程网站内容还不错,欢迎将大佬教程推荐给程序员好友。

本图文内容来源于网友网络收集整理提供,作为学习参考使用,版权属于原作者。
如您有任何意见或建议可联系处理。小编QQ:384754419,请注明来意。