我正在制作一个待办事项列表应用程序,并具有3种自定义单元格类型。对于任务单元,它只是左侧的imageview和右侧的textview。我希望单元格在textview文本大到一行时自动调整自身大小。
我添加了正确的约束并将其添加到viewWillAppear
tableView.estimatedRowHeight = 30
tableView.rowHeight = UITableView.automaticDimension
但是,当进入带有tableview的视图时,单元格保持很小的一秒钟,然后扩展到正确的大小。另外,在最初添加任务时,除非重新返回并再次打开视图控制器或向上滚动表视图直到该单元格不在视图中然后放开,否则该单元格不会调整大小。
这是非常奇怪的行为,甚至在从viewWillAppear中删除上面的两行时甚至发生。它只是无缘无故地发生。
在进入视图时,我希望像元大小正确,以后不要调整大小。
下面是一个类似的例子
答案 0 :(得分:0)
好的,所以我终于找到了答案。我使用自动布局以编程方式制作了单元格,其中一些是在单元格内的layoutSubviews()方法中设置的。仅在需要时才调用此方法。因此,当向上或向下滚动时。
要解决此问题,只需在cellForRowAt方法中调用
cell.layoutSubviews()