Это на самом деле довольно просто, просто используйте что-то вроде этого внутри uitableviewcell
[tableView beginUpdates];
self.frame = CGRectMake(0,0,width,new height);
[tableView endUpdates];
Не помню, но суперобзор uitableviewcell должен быть uitableview.