iphone - NSLayoutConstraint 和动态 UITableViewCell 高度

标签 iphone ios cocoa-touch uitableview nslayoutconstraint

如何编写(或在 IB 中执行)动态 tableViewCell 高度的布局约束?例如,如果单元格的 contenView 中有 textView(大小适合),我希望单元格与标签一样高。

最佳答案

如果您已经完全正确地设置了约束,则可以通过获取单元格实例并对其调用 systemLayoutSizeFittingSize:UILayoutFittingCompressedSize 来计算高度。这将导致您的实例围绕约束收缩,从而为您提供所需的高度。

但是,表格中的单元格仍然会从 tableView:heightForRowAtIndexPath: 中获取它们的高度。因此,您仍然必须做在自动布局出现之前会做的事情:您必须提前计算所有单元格的高度,以便您可以响应一连串的 tableView:heightForRowAtIndexPath: 调用。不同之处在于,现在您正在使用自动布局来执行高度计算,而不是之前所做的任何事情。

现在是坏消息:对于长表,这可能会很慢。

关于iphone - NSLayoutConstraint 和动态 UITableViewCell 高度,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/12806240/

相关文章:

iphone - Objective-C : How to fetch the router address?

ios - Objective-C:for循环没有执行?

ios - 如何删除 TableView ios 的索引路径中的重复项,

objective-c - 将 JSON 结果解析为 NSString 或 RestKit 中类似的 "primitive"数据类型

ios - NSException 派生类或异常名称列表?

iphone - AVAudioPlayer 只用一些文件初始化

ios - 如何从 URL 方案中获取参数。

ios - 在 Interface Builder 中将 subview 添加到动态项时应用程序崩溃

ios - 在 xcode 中添加 -Objcflags

Android 应用到应用通信