Uitableview iOS 7.1不允许动态桌面视图高度

Uitableview iOS 7.1不允许动态桌面视图高度,uitableview,ios8,autolayout,ios7.1,ios-autolayout,Uitableview,Ios8,Autolayout,Ios7.1,Ios Autolayout,我有一个VC,让我们称之为DetailsVC,它有一个tableView,其中有不同高度的行 DetailsVC作为子视图添加到另一个名为MainVC的VC中 详细地 这在iOS 8及以上版本中运行良好,但在iOS 7或7.1中不起作用 tableview的高度为零,根本不显示tableview 我了解UITableViewAutomaticDimension是iOS 8的一部分,在iOS 7中不可用 对于iOS 7和iOS 8,我应该使用什么其他方法 我的问题类似于我认为您只需检查操作系统版本

我有一个VC,让我们称之为DetailsVC,它有一个tableView,其中有不同高度的行

DetailsVC作为子视图添加到另一个名为MainVC的VC中

详细地

这在iOS 8及以上版本中运行良好,但在iOS 7或7.1中不起作用

tableview的高度为零,根本不显示tableview

我了解UITableViewAutomaticDimension是iOS 8的一部分,在iOS 7中不可用

对于iOS 7和iOS 8,我应该使用什么其他方法


我的问题类似于

我认为您只需检查操作系统版本,如果低于8,请手动计算单元格高度并返回它。 另外,出于性能原因,对于iOS 7,返回一个常量,或者只是不实现EstimatedHeightForrowatineXpath

Z

- (void)viewDidLoad
{
    [super viewDidLoad];

    self.automaticallyAdjustsScrollViewInsets = YES;
    [self.tableView registerClass:[UITableViewCell class] forCellReuseIdentifier:CellIdentifier];
    self.tableView.rowHeight = UITableViewAutomaticDimension;

}

- (void)viewWillAppear:(BOOL)animated
{
    [super viewWillAppear:animated];
    [self.navigationController setNavigationBarHidden:NO animated:animated];
}

- (void)viewDidLayoutSubviews
{
    [super viewDidLayoutSubviews];
    self.tableViewHeightConstraint.constant = self.tableView.contentSize.height;
    [self.tableView needsUpdateConstraints];

    CGFloat containerHeight = CGRectGetHeight(self.tableView.bounds) + self.addressLabelHeightConstraint.constant;
    [self.tableViewdelegate punchDetailsController:self didUpdateTableViewWithHeight:containerHeight];
    [self.contentView layoutIfNeeded];
}

- (CGFloat)tableView:(UITableView *)tableView heightForRowAtIndexPath:(NSIndexPath *)indexPath{
    return UITableViewAutomaticDimension;
}

- (CGFloat)tableView:(UITableView *)tableView estimatedHeightForRowAtIndexPath:(NSIndexPath *)indexPath{
    return UITableViewAutomaticDimension;
}