如果在删除行时更改UITableView的框架,例如:
tableView:commitEditingStyle:forRowAtIndexPath:
{
[tableView setFrame:CGRectMake(tableView.frame.origin.x, tableView.frame.origin.y, tableView.frame.size.width, tableView.frame.size.height + 40]
}
我没有看到表格布局有任何变化。我是否需要刷新视图,以便使用新框架显示表格?
感谢
答案 0 :(得分:0)
试试这个。
[tableView beginUpdates];
[tableView setFrame:CGRectMake(tableView.frame.origin.x, tableView.frame.origin.y, tableView.frame.size.width, tableView.frame.size.height + 40];
[tableView endUpdates];
答案 1 :(得分:0)
您可以使用以下代码删除该行。
[tableView deleteRowsAtIndexPaths:[NSArray arrayWithObject:indexPath] withRowAnimation:UITableViewRowAnimationBottom];
numberofRowsinTable--;
之后,
[tableview reloadData];
您还需要在
中减少并返回表格的行数- (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section {
return numberofRowsinTable;
}
答案 2 :(得分:0)
也许您还需要更新tableView.contentSize = tableView.frame
否则使用
[tableView setNeedsLayout];
[tableView setNeedsDisplay];
重绘tableView的方法