Fat*_*tie 5 uitableview ios ios-autolayout
这是一个动态细胞
注 - 在示例中,文本不是数据驱动的.它只是单元格的一些文本(例如,考虑帮助文本).在运行时,使用单元格内的实际按钮,将UILabel的.text从一个单词更改为多行.iOS正确调整单元格和表格的大小....
...但仅当单元格在屏幕外滚动,然后再次打开时.
如何提醒表视图重新计算"现在"的所有内容?
(请注意,此问题仅适用于iOS8 +,Xcode7 +,动态单元格高度的自动布局.)
我假设您没有设置内部text的属性,而是在其他地方设置(或异步执行)。如果是这样的话,我不会在那里更新用户界面。相反,我会更新支持该表的模型,然后调用. 这将让我们再次调用,但与重新加载整个表不同,这将优雅地将表视图保持在原来的位置。UILabelcellForRowAtIndexPathreloadRowsAtIndexPathscellForRowAtIndexPathcontentOffset
我知道这一切听起来不必要地复杂,但底线是你不拥有这个视图,表视图拥有。它必须做除更新单元之外的各种事情。即,如果单元格增长,找出哪些单元格滚动到视野之外并将它们出队。如果单元格缩小,请找出哪些单元格因此滚动到视图中。
这是一种极其复杂的舞蹈。您可以尝试调用setNeedsLayout该单元,但我不认为这会起作用(即使它起作用,这也是一种脆弱的方法)。表视图负责管理其单元格,因此如果您确实应该更新模型并重新加载该单元格。
| 归档时间: | 
 | 
| 查看次数: | 327 次 | 
| 最近记录: |