157 字
1 分钟
【iOS】折叠cell
先给出实现效果:

折叠cell的实现
折叠cell的关键是通过按钮控制tableView的高度:
- (void)press:(UIButton *)btn { [self.foldTableView mas_updateConstraints:^(MASConstraintMaker *make) { if (btn.selected) { make.height.mas_equalTo(30); } else { make.height.mas_equalTo(150); } }]; btn.selected = !btn.selected;}如此以来,点击按钮可以实现tableView高度的变化。
实现选中的单元格移到最前:
- (void)tableView:(UITableView *)tableView didSelectRowAtIndexPath:(NSIndexPath *)indexPath { NSString *str = self.array[indexPath.section]; [self.array removeObjectAtIndex:indexPath.section]; [self.array insertObject:str atIndex:0]; [self.foldTableView reloadData]; [self press:self.btn];}我们先获取Array中被选中的项目
然后在数株中移除,并插到头部,然后重新刷新tableView。这样就可以实现效果如下:

原文发布于 CSDN:【iOS】折叠cell