ios – 如何从NIB读取UITableViewCell(子类)的高度?

前端之家收集整理的这篇文章主要介绍了ios – 如何从NIB读取UITableViewCell(子类)的高度?前端之家小编觉得挺不错的,现在分享给大家,也给大家做个参考。
我有一个在NIB中定义的UITableViewCell(实际上是一个子类).在NIB中我将帧高设置为183,我还将“行高”设置为183并勾选自定义.

在我原来的问题中,这里的一切都出了问题.看起来我的背高度错了,细胞装在错误的高度,然后调整到合适的高度,造成一个令人讨厌的视觉故障.

实际上我做了一些愚蠢的事情(并且总是返回错误的高度),而且我已经太晚了才能弄清楚,所以我请求帮忙然后去睡觉.睡眠(咖啡)使一切都清晰.

因此,对于记录,如果从NIB加载自定义UITableViewCell,您可以查看frame.size.height并返回正确的数字.

如果你从tableView返回错误的数字:heightForRowAtIndexPath:你可以得到这个小故障,至少如果错误的单元格是表格中的最后一个(我预计问题将以另一种方式表现给其他单元格)

所以我已经解决了我自己的问题,并希望为其他任何人提供足够的信息.如果有人认为这应该有正式答案,请放心,我计划在一天或三天内接受最好看的一个.

解决方法

第一个被调用的UITableViewDelegate方法是heightForRowAtIndexPath而不是UITableViewDataSource方法,cellForRowAtIndexPath.

您只能在cellForRowAtIndexPath中获取自定义单元格高度,您可以在其中为该单元格分配init.因此,它不会考虑自定义单元格高度.

它将采用heightForRowAtIndexPath方法中提到的单元格的高度.因为它首先被调用.

原文链接:https://www.f2er.com/iOS/332428.html

猜你在找的iOS相关文章