ios – UITableView自动调整行约束在iPhone 6Plus上神秘地打破

我有一个自定义的UITableViewCell,它有一个缩略图和一堆文本.行高被配置为使用自动计算
tableView.estimatedRowHeight = 129;
tableView.rowHeight = UITableViewAutomaticDimension

行高应该是138点.
一切看起来都很棒,但是在iPhone 6 Plus上,自动行的高度对于具有以下日志的随机行INTERMITTENTLY.

(
    "<NSLayoutConstraint:0x17009ddd0 V:|-(20)-[scoop.ThumbnailImage:0x124d2a5a0]   (Names: '|':UITableViewCellContentView:0x124e23200 )>","<NSLayoutConstraint:0x17009de70 UITableViewCellContentView:0x124e23200.bottomMargin == scoop.ThumbnailImage:0x124d2a5a0.bottom + 20>","<NSLayoutConstraint:0x17009e780 V:[scoop.ThumbnailImage:0x124d2a5a0(90)]>","<NSLayoutConstraint:0x17009ef00 'UIView-Encapsulated-Layout-Height' V:[UITableViewCellContentView:0x124e23200(138.333)]>"
)

日志的最后一行似乎说,由于某种原因,行高被计算为138.333而不是138.我一直在敲我的头一段时间,但我无法弄清楚为什么会发生这种情况.有人可以帮忙吗?

更新:这是我的表视图单元格的样子.

更新我不能得到主要的repo代码,因为它是一个更大的项目的一部分.但是我已经设法用一个非常简单的理智项目来重现这个问题.请在这里找到on github.

解决方法

这个警告告诉你有一个冲突是你的约束.
将高度约束的优先级降低到999,它将消失.在您的Github项目中测试,并且完美地工作.

相关文章

当我们远离最新的 iOS 16 更新版本时,我们听到了困扰 Apple...
欧版/美版 特别说一下,美版选错了 可能会永久丧失4G,不过只...
一般在接外包的时候, 通常第三方需要安装你的app进行测...
前言为了让更多的人永远记住12月13日,各大厂都在这一天将应...