修改了UITableViewCell和不平衡的行标题行间距

时间:2013-07-08 19:47:50

标签: uitableview

上一个SO答案(see here)提出了以下代码,在对Subtitle样式tableView单元格的修改中包含右对齐和左对齐文本。我有一个间距问题,但这种tableview单元格修改方法与部分一起使用。

第二个(和更高)标题与上一个部分的最后一行之间的间距似乎从未修改的tableviewcell的底部开始,并没有考虑对cell.contentView的其他标签(见下文)的影响。调整行和标题高度属性似乎没有帮助,因为节的最后一行和节的第一行之间的间距仍然不平衡。

- (UITableViewCell *)tableView:(UITableView *)atableView cellForRowAtIndexPath:   (NSIndexPath *)indexPath{
    UITableViewCell *cell = [atableView dequeueReusableCellWithIdentifier:@"cell"];
    if (!cell) {
    cell = [[UITableViewCell alloc] initWithStyle:UITableViewCellStyleSubtitle reuseIdentifier:@"cell"];

    UILabel *labelOne = [[UILabel alloc]initWithFrame:CGRectMake(20, 22, 140, 20)];
    UILabel *labelTwo = [[UILabel alloc]initWithFrame:CGRectMake(160, 22, 140, 20)];

    labelOne.text = @"Left";
    labelTwo.textAlignment = UITextAlignmentRight;
    labelTwo.text = @"Right";

    [cell.contentView addSubview:labelOne];
    [cell.contentView addSubview:labelTwo];
    }

return cell;
}

1 个答案:

答案 0 :(得分:0)

单元格和页眉视图堆叠在一起,它们之间没有间距。因此,填充内容的唯一方法是调整单元格和标题高度。

如果您的内容布局因单元格或标题而异,以便单个单元格和标题需要自定义高度才能获得正确的填充,您可以通过实施tableView:heightForHeaderInSection:tableView:heightForRowAtIndexPath:委托方法来指定这些内容。你的视图控制器。

如果您可以发布更多详细信息,我可以为您提供更具体的答案,例如:一张突出问题的图片。