SWIFT UITableview establece autoheight según contenido – XCode – iOS

Ajuste automáticamente la altura de UITableView acuerdo con el contenido de forma dinámica. Probé la siguiente solución pero no funcionó para mí:

 dispatch_async(dispatch_get_main_queue()) { //This code will run in the main thread: CGRect frame = self.tableView.frame; frame.size.height = self.tableView.contentSize.height; self.tableView.frame = frame; } 

FUENTE

Yo estaba teniendo el mismo problema. Lo solucioné simplemente pasando la altura del contenido UITabelView Altura del marco UITabelView .

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

Llame a la function anterior en la function viewDidAppear de su viewController .

  override func viewDidAppear(animated: Bool) { UITableView_Auto_Height(); } 
  BAD::if(self.UITableView.contentSize.height < self.UITableView.frame.height){ GOOD::if(self.UITableView.contentSize.height > self.UITableView.frame.height){