Uitableview UITableVeiwCell中的更新约束

Uitableview UITableVeiwCell中的更新约束,uitableview,autolayout,Uitableview,Autolayout,我在UITableViewCell中有一个视图,视情况而定,视图高度可以是90或60。我对高度约束做了一个IBOutlet,并在cellForRow方法中更新了它的值,但在日志中得到了布局警告。更新常量后是否需要调用cellForRow中所需的LayoutFneed等方法?UITableViewDelegate有此方法,用于确定单元格的高度 - (CGFloat)tableView:(UITableView *)tableView heightForRowAtIndexPath:(NSIndex

我在UITableViewCell中有一个视图,视情况而定,视图高度可以是90或60。我对高度约束做了一个IBOutlet,并在cellForRow方法中更新了它的值,但在日志中得到了布局警告。更新常量后是否需要调用cellForRow中所需的LayoutFneed等方法?

UITableViewDelegate
有此方法,用于确定单元格的高度

- (CGFloat)tableView:(UITableView *)tableView heightForRowAtIndexPath:(NSIndexPath *)indexPath;
执行此方法并根据您的条件返回所需的高度

除此之外,当提供此高度时,您需要确保约束不会中断

以下是步骤

  • 从“对象库”拖放一个
    UITableViewCell
  • 选择单元格,然后从“大小检查器”中将“行高”设置为60
  • 设置子视图及其约束。不要在表格视图单元格的“内容视图”上设置高度约束
  • 执行上述方法,返回高度为60
  • 如果同一单元格的高度为90,请在第二步、第四步中设置90,并确保在第二步中设置90时约束不会中断