我想根据从超级视图中删除子视图时在表视图中填充的数组中项目的大小来刷新和调整我的表视图的大小。我是通过创建一个框架来增加每个增加项目的高度50。这是我的代码
- (IBAction) doneAddingUsers:(id)sender {
[self.crewTable setHidden:NO];
[self.crewTable reloadData];
self.crewTable.frame = CGRectMake(self.crewTable.frame.origin.x, self.crewTable.frame.origin.y, self.crewTable.frame.size.width, [crewArray count]*50);
NSLog(@"height: %f", crewTable.frame.size.height);
[self.view bringSubviewToFront:self.crewMembersView];
[self.crewMembersView removeFromSuperview];
}
在日志中它显示正确的高度但在UI中似乎没有更改表视图的高度。我也禁用了滚动
提前致谢
答案 0 :(得分:2)
您可以执行以下操作,而不是在doneAddingUsers:中设置框架:
- (NSInteger)tableView:(UITableView *)tableView numberOfRowsInSection:(NSInteger)section
{
int count = [crewArray count];
//Set the height of the tableview
CGRect frame = self.tabPackageList.frame;
frame.size.height = (count * 50);
[self.tabPackageList setFrame:frame];
// Return the number of rows in the section.
return count;
}