[swift]UITableViewを画面の一部にする。

広告

相変わらず演劇感想文リンクのアプリを開発しています。

まずは、完成イメージ。
スクリーンショット 2016-03-15 23.21.06
前回までに作成した公演情報の下に劇評の一覧を表示します。UITableViewを使いたいのですが、色々なサンプルの殆どが、画面全体をUITableViewにするものしか見つけられませんでした。試行錯誤をしてなんとか形にできたので、共有です。

とはいえ、結局は以下の手順で実現することができました。

・UITableViewを画面の部品クラスとして実装

・その部品を親画面にaddSubviewで追加

・位置設定を行い、画面上に正しく表示する。

 

■別のファイルで、TableViewのクラスを設定

ネットで見つけたサンプルだと、ViewControllerにTableViewのDelegate等をもたせている例が多かったのですが、VCではなくViewそのものにもたせることにして、別ファイルでClassを作成しました。

劇評画面

 

■addSubViewで親画面に追加。

UITableViewもUIViewのサブクラスなので、普通にaddSubViewで親画面に追加できます。

 

 

■位置設定を行い、画面上に正しく表示する。

本来的には、Autolayout等を利用して制約をきちんとかけるべきなのですが、とりあえず簡単にすませてしまいました。

この画面のサイズ及び位置を決定する関数「劇評集画面配置」をlayoutSubViews()の中でコールすれば、縦/横のサイズ変更にも対応してくれました。

広告

コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です