ささお1UITableViewCellのheightを変更する方法を調べたのでメモ。共有:なぜheightを変更する必要があるのか?twitterを例に考えてみましょう。行数がどれくらいか?画像があるのか?それらの条件でcellの高さを変更したいですよね。フィットさせたいですよね。heightを動的に変更する方法まず大切なことは3つあります。AutolayoutestimatedRowHeightrowHeightこれらです。1AutolayoutStoryboardを開きましょう。UITableViewまたはUITableViewControllerを準備してある前提で進めます。UITableView,UITableVeiwControllerをご存じない方は、こちらをご参考にしてください。swift3:超初心者向け!UITableViewControllerの使い方(1)swift3:初心者向け!UITableViewの使い方:delegate・datasourceについてそれでは進めていきます。CellにUILabelを配置する。この時しっかりとCellの中にUILabelを配置する必要がある。UILabelにAutolayoutを設定。左右10、上下5に指定。inspectorにてLinesを0に設定。1の理由Autolayoutで失敗するから。UILabelにAutolayoutを設定することで、どのような大きさのcellにも対応できるようになった。これは逆に考えると、UILabelが大きくなったらcellも大きくなるということになる。今回、UILabelに入れる文字列は1行ではなく、複数に渡る。cellのheightの変化を見たいからだ。Linesを1に設定していると1行しか表示できない。0に設定するとなぜか、複数行とりあつかうことができる。これで第一段階終了です。40これは初期段階のcellの高さを設定します。これが必要なのかわからないが、これがないと動かないんですよね。今回は40に設定しました。UITableViewAutomaticDimensionこのように指定する。これによって各cellが別々のheightを持つことができるようになる。cellの大きさをAutomaticに変化させることができる。cell}}こんな感じになれば成功です。質素ですね・・・しかもcellのheightの変化がわかりづらい・・・これでも変化してるんですよ!おまけ:Swift\nSwift\nSwiftの解説この『\n』という謎。これは改行を表しています。これによって実際にsimulatorでは見えなくなり、改行されます。文字列の中に使えるので便利ですね。『正規表現』とかいう闇の深い分野らしいです。(新しいウィンドウで開きます)Swiftささお3年目iOSエンジニア。スタートアップで働いておりやす。プログラミングスクールとエンジニアのキャリアを考えたい。AMこのソースコードの「\n」は『正規表現』ではなく『エスケープシーケンス』ですね。*メールアドレス(公開はされません。簡単な自己紹介ささお2年目のiOSアプリエンジニア。プログラミングスクールに通い、プログラミングスクールで講師を経験したのち、スタートアップに就職。プログラミングスクールとエンジニアのキャリアを考えたい。普段は渋谷あたりにいます。教育に興味があります。キャリアを考えないとなぁ。ささおのTwitter初めてのフリーランスにポテパンは登録がとにかく楽。ほんとに”魅力的なお仕事が多数”かは知らないけど、最初にごちゃごちゃ記入させない感じが好き。