带有autolayout的嵌套UITableViews

时间:2015-10-12 08:08:49

标签: ios uitableview autolayout

我有一个嵌套START SIGINT (undefined) EXIT (1) s的布局(每个UITableView的contentView都有另一个UITableViewCell唯一的孩子。

所有叶子单元都使用自动布局正确设置(事实上,当它们显示在单个表中时,它们显示正常)。

但是当它们在内表中时,外表不会计算单元格的正确高度,导致它们的标准高度为UITableView。我正在使用

44

表示内外表。

如何通过自动布局让表格显示正确的高度? (我不想覆盖self.tableView.rowHeight = UITableViewAutomaticDimension; self.tableView.estimatedRowHeight = 260; ,我希望autolayout能够做到这一点。)

提前谢谢

1 个答案:

答案 0 :(得分:1)

我个人认为嵌套tableview是一种糟糕的UX体验。更好的是,您将为您的用户找到不同的方法 说它们也会导致不同的问题,例如谁先滚动等等。 在您的情况下,问题是由于UITableViewAutomaticDimension简单地使用UILayoutFittingCompressedSize发送到单元格内容视图-systemLayoutSizeFittingSize(或类似),滚动视图意味着0; 0基本上您的表视图在计算时不计算细胞高度。
在我看来,你现在有两个选择:

  • 手动制作微积分并更快地缓存结果 滚动
  • 创建UITableView的子类,当要求其intrinsicContentSize返回自定义大小时

真的希望这有帮助。