UITableView:如何在viewForHeaderInSection中获取heightForHeaderInSection

时间:2013-12-14 03:57:58

标签: ios objective-c uitableview

我正在为UITableView创建自定义部分标题视图。

但是如何在viewForHeaderInSection方法中获取tableHeight?我目前正在执行以下操作,tableHeight保留值0。

-(CGFloat) tableView:(UITableView *)tableView heightForHeaderInSection:(NSInteger)section
{
    if (includeButton)
        return 55;
    else
        return 30;
}

- (UIView *) tableView:(UITableView *)tableView viewForHeaderInSection:(NSInteger)section
{
    CGFloat tableHeight = [tableView headerViewForSection:section].frame.size.height;
    ........
}

2 个答案:

答案 0 :(得分:5)

这两种方法在同一个视图控制器中。只需调用您的实现并传递表视图和部分,如下所示:

CGFloat tableHeight = [self tableView:tableView heightForHeaderInSection:section];

答案 1 :(得分:0)

您正在根据

设置表格标题部分的高度
if (includeButton)
    return 55;
else
    return 30;

同样,当您想要获得截面高度时,也可以这样做。

 CGFloat tableHeight = (includeButton)?55:30;

但你必须确保每个部分都存在“includeButton”。

希望有所帮助。