2017-02-11 164 views
0

我正在尝试调整表格视图的大小,以动态地将大小修改为其内容(行数)。排高度稳定到300,当我按下波纹管时,我需要扩大其高度。动态调整UITableView高度的大小

我已经tryed到残疾人的UITableView滚动控制,并把在viewDidAppear这个代码,但我不得到正确​​的结果:

DispatchQueue.main.async { 
      var frame: CGRect = self.tableView.frame; 
      frame.size.height = self.tableView.contentSize.height; 
      self.tableView.frame = frame; 
} 

我也试图实现这种方法之前打电话给他们加行:

func tableView_Auto_Height() 
    { 
     if(self.tableView.contentSize.height < self.tableView.frame.height){ 
      var frame: CGRect = self.tableView.frame; 
      frame.size.height = self.tableView.contentSize.height; 
      self.tableView.frame = frame; 
     } 
    } 

我有这个计划的看法:

components scheme

回答

0

最后,我解决问题添加包含滚动视图的视图(视图附加图像)和其他视图中的滚动之前,和在按钮加入这一行:

let numberForConstraint = CGFloat((detailLines.count + 1) * 300) 
tableHeightConstraint.constant = numberForConstraint 

也许不是最好的解决方案,但此解决了我的问题。

enter image description here

+0

300是为我的行配置的高度 –