まず、私は知っていて、定期的に使用しています。
-(CGFloat)tableView:(UITableView *)tableView heightForRowAtIndexPath:(NSIndexPath *)indexPath
...この質問はそれよりも少し複雑です:-)
データ駆動型のカスタム UITableViewController があります。実行時のテーブルの定義に応じて、選択したカスタム セル (それ自体が個別のカスタム UITableViewCell クラス) を取り込みます。
カスタム セルもデータ ドリブンであり、高さは実行時にのみ決定されます。
ランタイム ログを実行すると、表示されているセルに対して cellFor... を呼び出す前に、UITableViewController がテーブル内のすべてのセルに対して heightFor... を呼び出すことがわかります。
これは、高さを決定するために一度セルを構築し、要求されたときに再びセルを返す必要があることを意味します。
heightFor.. を介して高さのデフォルト値を返し、実際の高さがわかったらこれをオーバーライドすることは可能ですか?
または、セルを 2 回作成する必要がないようにする代替ソリューションはありますか?
提案をいただければ幸いです。