Мне нужно было сделать что-то подобное в iOS 8: представление с прокруткой, которое содержало не прокручиваемое табличное представление фиксированной ширины с переменным количеством строк содержимого, поэтому я хотел динамически изменить высоту табличного представления.
Что мне помогло, так это установить ограничение высоты для табличного представления с фиктивным значением, а затем создать выходы как для табличного представления, так и для ограничения.Тогда это было все, что мне было нужно:
class ViewController: UIViewController, UITableViewDataSource {
@IBOutlet weak var tableViewHeightConstraint: NSLayoutConstraint!
@IBOutlet weak var tableView: UITableView!
override func viewDidAppear(animated: Bool) {
super.viewDidAppear(animated)
tableViewHeightConstraint.constant = tableView.contentSize.height
}
// (plus additional data source methods, etc.)
}
Я могу представить себе ситуации (может быть, с большим количеством строк или строк переменной высоты), где это может быть не так просто, но это сработало для меня.