ios - 布局 UIView 而不将其添加到 subview

标签 ios swift

我正在创建一个重用单元格、支持页眉和页脚并且还支持约束的 GridView 。

但是我在约束布局方面遇到了麻烦,因为我将所有内容都添加到 ScrollView,约束不起作用。我已经试过了

sizeThatFits setNeedsUpdateConstraints updateConstraintsIfNeeded setNeedsLayout layoutIfNeeded

我这样做是因为我没有找到任何支持在 swift 或 obj-c 中开发的所有内容的 GridView

关于如何强制 UI 在将其添加到 ScrollView 之前计算约束有任何想法吗?

最佳答案

Any idea on how I can force that the UI calculate the Constraints before adding it to the Scroll view?

您可以尝试调用 -layoutIfNeeded,但它可能不起作用。操作系统可能经过优化,不会布局不属于 View 层次结构的 View 。即使它有效,当它作为 subview 添加到另一个 View 时也会重新布局。

But I'm getting a bad time with the layout of the constraints, because I add everything to a ScrollView, the constraints doesn't want to work.

要让自动布局与 ScrollView 一起工作,您需要将所有对象添加到单个 View ,然后将该 View 添加到 ScrollView 。

使用带有自动布局的 ScrollView 是很棘手的。每次我不得不这样做时,我仍然会畏缩。

关于ios - 布局 UIView 而不将其添加到 subview ,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/30741418/

相关文章:

ios - Xamarin 表格 : Launcher icon for ios

iphone - 存储应用程序参数,如 key

swift - swiftlint :disable:next and swiftlint:disable:this? 和有什么区别

ios - 在 View Controller 之间传递数据

ios - Swift - 桥接头失败。 '*' 没有名为 '*' 的成员

swift - TableView 单元格可选 - swift

swift - 如果整数大于 x 但小于 y (Swift)

ios - 将 iOS 应用程序分发到我的客户端 iOS 开发者帐户

ios - 如何在iOS中通过触摸来使对象移动

ios - 如何固定 LiquidFloatingActionButton 在 UITableView 中的位置?