gpt4 book ai didi

iphone - UITableView 的自动布局错误

转载 作者:技术小花猫 更新时间:2023-10-29 10:19:45 26 4
gpt4 key购买 nike

我有一个 TableView,我使用委托(delegate)方法 tableView:heightForRowAtIndexPath: 指定每个单元格的高度。

当我旋转 View 时,出现我不太明白的错误。

它不能满足下面的约束并打破它继续。

"<_UIScrollViewAutomaticContentSizeConstraint:0x8e8d040 UITableView:0x9423400.contentHeight{id: 213} == -1568.000000>"

有谁知道发生了什么以及我为什么要打破这个限制?

最佳答案

更新:此问题在 iOS 8 中不再相关,iOS 8 添加了对自动调整单元格的支持。然而,它仍然适用于 iOS 7。

原始答案(iOS 7):

Greg 的回答绝对对我有用——我需要调试我的 tableView:estimatedHeightForRowAtIndexPath: 方法。我做了一些调试和一些快速实验,这里是我学到的一些东西:

  1. 不要在估计的方法中使用 UITableViewAutomaticDimension。此常量用于页眉和页脚方法。我想我在阅读文档时没有给予足够的重视:) 更新:UITableViewAutomaticDimension 现在可用于 iOS 8 中的行高,这是自调整单元格功能的一部分。

  2. 估计行高为 1.0 会导致异常:“NSInternalInconsistencyException”,原因:“表格 View 行高不能为负...””估计小于 1.0 也会产生奇怪的结果。

  3. 在 2.0 和实际值之间进行估算没有任何异常(尽管出于优化原因,2.0 可能是一个糟糕的选择 - 您希望尽可能接近实际值)。

  4. 约束异常仅在估计行高大于实际行高时发生。离实际越近,异常发生的可能性就越小。在出现异常之前,您的估计值可能偏离多远似乎与几个不同的因素有关:实际行高、行的位置等。

关于iphone - UITableView 的自动布局错误,我们在Stack Overflow上找到一个类似的问题: https://stackoverflow.com/questions/18397206/

26 4 0
Copyright 2021 - 2024 cfsdn All Rights Reserved 蜀ICP备2022000587号
广告合作:1813099741@qq.com 6ren.com