UITableView节头与64位iPad上的行重叠.32位工作正常

Ash*_*had 6 64-bit uitableview 32bit-64bit ios

32位iPad: 在此输入图像描述



64位iPad: 在此输入图像描述

这是代码:

- (float) tableView:(UITableView *)tableView heightForHeaderInSection:(NSInteger)section
{
    return 40.0;
}

- (UIView *) tableView:(UITableView *)tableView viewForHeaderInSection:(NSInteger)section
{
    UIView *headerView = [[UIView alloc] initWithFrame:CGRectMake(0, 0, tableView.frame.size.width, 40)];

    [headerView setBackgroundColor:[UIColor grayColor]];

    UILabel *nameLabel = [[UILabel alloc] initWithFrame:CGRectMake(10, 0, 113, headerView.frame.size.height)];
    nameLabel.font = [UIFont systemFontOfSize:14];
    nameLabel.numberOfLines = 0;
    nameLabel.textAlignment = NSTextAlignmentCenter;
    nameLabel.text = @"Name";
    [headerView addSubview:nameLabel];

    nameLabel = [[UILabel alloc] init];
    nameLabel.numberOfLines = 0;
    nameLabel.font = [UIFont systemFontOfSize:14];
    nameLabel.frame = CGRectMake(175, 0, 50, headerView.frame.size.height);
    nameLabel.text = @"Risk Level";
    [headerView addSubview:nameLabel];

    nameLabel = [[UILabel alloc] init];
    nameLabel.numberOfLines = 0;
    nameLabel.font = [UIFont systemFontOfSize:14];
    nameLabel.frame = CGRectMake(220, 0, 50, headerView.frame.size.height);
    nameLabel.text = @"Code";
    [headerView addSubview:nameLabel];

    nameLabel = [[UILabel alloc] init];
    nameLabel.numberOfLines = 0;
    nameLabel.font = [UIFont systemFontOfSize:14];
    nameLabel.frame = CGRectMake(280, 0, 60, headerView.frame.size.height);
    nameLabel.text = @"Currency";
    [headerView addSubview:nameLabel];

    nameLabel = [[UILabel alloc] init];
    nameLabel.numberOfLines = 0;
    nameLabel.font = [UIFont systemFontOfSize:14];
    nameLabel.frame = CGRectMake(420, 0, 100, headerView.frame.size.height);
    nameLabel.text = @"Issuer";
    [headerView addSubview:nameLabel];

    return headerView;
}
Run Code Online (Sandbox Code Playgroud)

Ash*_*had 16

找到了解决方案.

不得不使用CGFloat而不是float作为heightForHeaderAtSection的返回类型:

  • @AshishAwaghad我使用正确的方法,CGFloat返回,但问题仍然存在 (3认同)