UITableviewcell中的Autolayout问题将Uitableview作为子视图

时间:2017-04-11 17:26:17

标签: ios iphone swift uitableview autolayout

我在自动布局方面非常新。我已经尝试过所有方式并在线搜索但无法找到正确的答案。这是我想要做的..我有一个带有customcell的UITableView1。现在在customcell我有一个UITableView2作为子视图。

这是我的问题UITableView2使用自动高度正确加载数据。但是我的UITableView1单元格高度没有按照UITableView2高度增加。这是我的观点的图像,可以很容易理解。请帮我解决这个问题enter image description here

1 个答案:

答案 0 :(得分:0)

基本上好了:

首先,您必须使tableView1具有自动调整大小的单元格。 为此,在tableView1类中,您需要在viewDidLoad()方法中添加以下内容:

tableView.rowHeight = UITableViewAutomaticDimension
tableView.estimatedRowHeight = constant-value-here

之后,您需要将以下自动布局约束添加到UITableViewCell子类。

  1. 创建一个在init方法中调用的方法,并将其命名为setupCell()
  2. 在该方法中,添加以下内容:

    tableView2.centerXAnchor.constraint(equalTo: centerXAnchor).isActive = true tableView2.centerYAnchor.constraint(equalTo: centerYAnchor).isActive = true tableView2.bottomAnchor.constraint(equalTo: bottomAnchor, constant: -8).isActive = true tableView2.heightAnchor.constraint(greaterThanOrEqualTo: another-constant-value here).isActive = true

  3. 还要确保tableView2.translatesAutoresizingMaskIntoConstraints设置为false,并且不要忘记在tableView子类的init方法中调用setupCell方法。

    如果有什么不清楚,请告诉我。