OStack程序员社区-中国程序员成长平台

标题: ios - 渲染 View 中的自动布局不会更新其框架 [打印本页]

作者: 菜鸟教程小白    时间: 2022-12-13 03:43
标题: ios - 渲染 View 中的自动布局不会更新其框架

我有一个从 xib 创建的 View ,上面有各种标签。我没有将此 View 添加到我的屏幕,而是在上下文中渲染它以从中创建一个 UIImage,然后用户可以将其导出。

View 使用自动布局根据标签的内容重新定位标签。当我将此 View 添加到 super View 并将其显示在屏幕上时,所有内容都已正确定位,但如果我只是在上下文中渲染它,则不会应用任何自动布局约束;所有标签的大小都与它们在原始 xib 中的位置完全相同。

如何使 View 应用其约束?

我尝试了以下方法但没有成功:

view.translatesAutoresizingMaskIntoConstraints = FALSE;
[view setNeedsUpdateConstraints];
[view setNeedsLayout];
[view setNeedsDisplay];
[view layoutSubviews];



Best Answer-推荐答案


只需使用 layoutIfNeeded

[yourView layoutIfNeeded];

这将为您提供更新的框架。 translatesAutoresizingMaskIntoConstraints 用于释放/获取约束。您可以根据需要使用它。

关于ios - 渲染 View 中的自动布局不会更新其框架,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/27249089/






欢迎光临 OStack程序员社区-中国程序员成长平台 (https://ostack.cn/) Powered by Discuz! X3.4