チャットアプリを作成する際に考えたので、自分用にメモ
Storyboard上
- 普通にテーブルビューを設置
- xibでカスタムセルを作成する
- カスタムセル内にラベルを設置する
- ラベルに対してAutolayoutで上、下、右、左にマージンを設定する
- ラベルに対してAutolayoutで高さを設定する。最小の高さを設定すること(ここが大き過ぎると異様にセルが高くなってしまう)
- 5番で設定したラベルの制約を、Equalから、GreterThanEqualに変更する。
xibのSwiftファイル上
7. cellを呼び出される際に、labelにテキストを入れ、かつsizeToFitメソッドを呼ぶようにする
ViewController
8.ViewDidLoadあたりで、セルの高さを可変にするという宣言をする
TableView.estimatedRowHeight = 20
TableView.rowHeight = UITableViewAutomaticDimension