に基づいて作る私は階層UITableViewCellの内部にUITableViewを追加しています。テーブルビューの高さは、コンテンツ
を以下に含まれているのUITableViewCellを作成しているのUITableViewCell ------ ContentView ------------ ScrollView ----- ------------- TableView
TableViewのスクロールを停止します。
テーブルのデリゲートとデータソースが実装されているカスタムクラスで、TableViewの高さ制約のコンセントを取得しました。
この点データは1つの問題で表示されます。 [テーブルの高さは固定されており、xibからの制約で50 pxに設定されています]
今すぐwillDisplayコール内で高さ制約をtableviewのコンテンツサイズに更新しています。しかし、これは直ちに更新されていません。テーブルをスクロールすると、更新された高さでテーブルが表示されます。
正しく表示されている制約の定数をデバッグしましたが、tableviewでreloadDataを呼び出してもUIが古い高さを表示しています。何もここに行方不明...
GitHubのリンク:あなたのビューコントローラでheightForRow
方法で
class InnerTableView: UITableView {
override var intrinsicContentSize: CGSize {
return self.contentSize
}
}
2.Return UITableViewAutomaticDimension
次のオーバーライドを持つインナーtableView
ためhttps://github.com/sagarmane19/Sample-Apps
私はこのアプローチを試しました。以前は1つのセルしか表示していなかった複数のセルを見ることができました。これは今見ている方法です:https://sagarm.tinytake.com/sf/MTM3Nzc2NF81MDA3MDg2 –
GitHubリンク:https://github.com/sagarmane19/Sample-Apps –
@Sagar ...はい、要点です動的な高さのビューに高さ制約を指定するのではなく、代わりに自動レイアウトに依存するということです。 – alexburtnik