Tenía una vista de tabla dentro de la vista de desplazamiento y tuve que calcular la altura de tableView y cambiar su tamaño en consecuencia. Esos son los pasos que he tomado:
0) agregue una UIView a su scrollView (probablemente funcionará sin este paso, pero lo hice para evitar posibles conflictos): esta será una vista de contenedor para su vista de tabla. Si toma este paso, configure los bordes de las vistas directamente a los de la vista de tabla.
1) crea una subclase de UITableView:
class IntrinsicTableView: UITableView {
override var contentSize:CGSize {
didSet {
self.invalidateIntrinsicContentSize()
}
}
override var intrinsicContentSize: CGSize {
self.layoutIfNeeded()
return CGSize(width: UIViewNoIntrinsicMetric, height: contentSize.height)
}
}
2) establezca la clase de una vista de tabla en Storyboard en IntrinsicTableView: captura de pantalla: http://joxi.ru/a2XEENpsyBWq0A
3) Establezca heightConstraint en su vista de tabla
4) arrastre el IBoutlet de su tabla a su ViewController
5) arrastre el IBoutlet de la restricción de altura de su tabla a su ViewController
6) agregue este método a su ViewController:
override func viewWillLayoutSubviews() {
super.updateViewConstraints()
self.yourTableViewsHeightConstraint?.constant = self.yourTableView.intrinsicContentSize.height
}
Espero que esto ayude