嵌入在 UIView 中的动态 UITableView - 计算高度

Posted

技术标签:

【中文标题】嵌入在 UIView 中的动态 UITableView - 计算高度【英文标题】:Dynamic UITableView embedded in UIView - Calculate Height 【发布时间】:2013-11-04 17:44:01 【问题描述】:

我有一个嵌入到 UIView 中的 UITableView。表格视图包含一系列动态自定义单元格,这些单元格是一系列高度(如下面的屏幕截图所示)

是否可以计算和应用 UITable 的高度以及父 UIView 的高度?

【问题讨论】:

我一定遗漏了一些东西——你为什么认为这不可能? (同样,没有截图) 我觉得还不够清楚,你想总结所有行的高度并将你的父视图的高度设置为它吗?否则,我的简单回答对你来说就足够了。 在创建表格视图并设置其框架高度时,您必须根据您的数字计算高度。只需使用与计算单元格高度相同的方法,声明类方法是一个好方法。 【参考方案1】:
CGRect parentFrame = name of your UIView.frame;
parentFrame.size.height = name of your UITableView.frame.size.height;
[name of your UIView setFrame:parentFrame];

现在您将父视图的高度设置为表格视图的高度。

【讨论】:

@Mert 在使用自动布局时你是怎么做到的? 您可以通过在 layoutSubviews/viewDidLayoutSubviews 方法中使用 setFrame 使 setFrame 和 autolayout 一起工作,但这非常脆弱,并且在不同的 ios 版本中可能会出现错误;简而言之,它只能是您的最后选择。

以上是关于嵌入在 UIView 中的动态 UITableView - 计算高度的主要内容,如果未能解决你的问题,请参考以下文章

如何为嵌入在 UITableViewCell 中的 UIView 设置动画

具有自动布局的动态 uiview 布局

以编程方式获取嵌入在 UIStackView 中的自定义 UIView

有没有办法将 UIView 嵌入到 UIScrollview 中而不会丢失 iOS 中的子视图约束?

如何将数据传递到 UIView 侧的嵌入式 UIViewController - Swift 5

嵌入 UINavigationController 时如何处理 UIView 区域减少的问题