有没有一种方法可以动态扩展/收缩UITableViewCells?

问题描述

| 我希望有一个自定义UITableViewCell,它在未选择时显示有限的数据,但是在选择时会展开以显示更多详细信息。 我的问题是在选择/取消选择事件期间如何调整单元格的大小?     

解决方法

不久前我就在做。要调整尺寸,您需要再次使
UITableView
heightForRowAtIndexPath
。这将导致单元重画。采用
- (void)reloadRowsAtIndexPaths:(NSArray *)indexPaths withRowAnimation:(UITableViewRowAnimation)animation 
为了做到这一点。如果将动画设置为
YES
,它将很好地为单元格的扩展动画。为了调整单元格,
UITableViewCell
子类中的
setSelected:
可能会有所帮助。     ,创建UITableViewCell的子类,并重写drawRect()方法。 在视图控制器的didSelectRowAtIndexPath中,可以在收缩状态和展开状态之间切换。您可以更改框架大小,添加或删除子视图,添加更多数据,无论您需要做什么。