Objective-c如何在Celll上点击提供的按钮增加/减少UITableViewCell的高度

时间:2011-11-29 04:50:28

标签: ios uitableview

我有UItable视图单元格,其上有一个按钮。当我点击该按钮时 单元格应该增加并显示其8个标签,当我再次点击按钮时,它应该得到它的原始形状。最初我想只显示两个标签。 anyOne可以帮助我如何继续。

我尝试过创建了带有8个标签和一个按钮的自定义单元格。 当点击按钮时,我试图显示带有8个标签的单元格,否则显示两个没有发生。

谢谢

2 个答案:

答案 0 :(得分:0)

如果要在UITableView中重新加载单元格,请使用以下代码:

[self.tableView reloadRowsAtIndexPaths:[NSArray arrayWithObject:indexPath]
                      withRowAnimation:UITableViewRowAnimationNone];

这将导致在相应的单元格重绘之前使用适当的indexPath调用tableView:heightForRowAtIndexPath:和tableView:cellForRowAtIndexPath:方法。确保跟踪该索引路径中的单元格是应该扩展还是收缩(不要将该信息存储在单元格中,因为您将创建一个新单元格),并做出相应的响应。

答案 1 :(得分:0)

链接到单元格按钮的方法应如下所示:

- (IBAction)myMethod:(id)sender;

在实施中你可以试试这个:

UIButton *button=sender;
UITableViewCell *cell=[button superview]; //this should get you the contentView OR the UITableViewCell
//now you can increase cell to display all its content
[UIView beginAnimations:nil context:nil];
[UIView setAnimationDuration:1.0];
[cell setFrame:yourFrame];
[UIView commitAnimations];

我不确定[button superview]获取表格单元格或单元格的属性contentView,因为现在我无法尝试此代码。