Kaydırma görünümü içinde bir tablo görünümü vardı ve tableView yüksekliğini hesaplamak ve buna göre yeniden boyutlandırmak zorunda kaldı. Bunlar attığım adımlar:
0) scrollView için bir UIView ekleyin (muhtemelen bu adım olmadan çalışacaktır, ancak olası çakışmalardan kaçınmak için yaptım) - bu tablo görünümünüz için bir includer görünümü olacaktır. Bu adımı uygularsanız, görünüm sınırlarını doğrudan tablo görünümünün kenarlarına ayarlayın.
1) UITableView'in bir alt sınıfını oluşturun:
class IntrinsicTableView: UITableView {
override var contentSize:CGSize {
didSet {
self.invalidateIntrinsicContentSize()
}
}
override var intrinsicContentSize: CGSize {
self.layoutIfNeeded()
return CGSize(width: UIViewNoIntrinsicMetric, height: contentSize.height)
}
}
2) Storyboard'daki bir tablo görünümü sınıfını IntrinsicTableView olarak ayarlayın: ekran görüntüsü: http://joxi.ru/a2XEENpsyBWq0A
3) heightConstraint'i tablo görünümünüze ayarlayın
4) Tablonuzun IBoutlet'ini ViewController'ınıza sürükleyin
5) tablonuzun yükseklik kısıtlamasının IBoutlet'ini ViewController'ınıza sürükleyin
6) bu yöntemi ViewController'ınıza ekleyin:
override func viewWillLayoutSubviews() {
super.updateViewConstraints()
self.yourTableViewsHeightConstraint?.constant = self.yourTableView.intrinsicContentSize.height
}
Bu yardımcı olur umarım