Swift xibを使わずにコードのみでUITableViewのCustomCellの高さを自動調整するサンプル

コードのみでUITableViewのCustomCellの高さを自動調整するサンプルを作成してみる。xibファイルは未使用。

f:id:loosefingers:20160807134236p:plain

StoryBoardを使ってCustomCellの高さを可変にできる記事はたくさんあるのだがコードのみで、そのレイアウトを実現する方法がみつからなかったので試してみた。結論的には、コードからCutomeCellのAutoLayoutを適用する事で実現できました。AutoLayoutは複雑だけれ慣れてしまえばxibを使う方法よりも移植性が高まり効率は上がるのだと思う。またAutoLayoutの設定がコード上ですぐに確認できるのはいいと思う。ただ、AutoLayoutが複数設定された場合に逆に可読性がさがる可能性も十分考えられるので、xlibとコードのどちらを使えばいいかはその時のケースから考えるべきか。ひとまずコードからAutoLayoutを設定する手法になれていこうと思う。

今回作成したサンプル

Self Sizing Cells with UITableView and Auto Layout Programmatically

gist.github.com