Swiftで遊ぼう! on Hatena

あしたさぬきblogでやってた初心者オヤジのiOSプログラミング奮闘記がHatenaに来ました

Swiftで遊ぼう! - 341 - カスタムTableViewをコードから

Swiftで遊ぼう!の古い記事-> Life-LOG OtherSide
質問 : Swiftで遊ぼう! - 252 - FaceViewプロジェクト始動 - Swiftで遊ぼう! on Hatena

巷ではSwift 2.0の話が出て新しい開発環境の話題が持ちきりようのようですが、私はまだSwift1.2をモノにできていないので、この話題に触れることができません(T_T)

1年前からSwiftに取り組んでいるのに情けない話です。

まあ50オヤジが焦っても仕方ないんで、ゆっくりり取り組みます。

TableViewのカスタマイズを勉強していきましょう。

新しいプロジェクトを作ります。その名も「Table Cells」です。

Main.storyboardを開いて、オブジェクト・ライブラリからTable Viewをドラッグ&ドロップしてコンストレイントを設定してください。

さて、ViewController.swiftはそのまま使います。Table Viewのデリゲーションを作ってください。このステップは何度も説明しているので省きます*1

さて、Table Viewが保持するデータはTable View Cellオブジェクトなのでクラスを作っていきます。プロジェクトナビゲータを選んでから右クリックをします。「New File...「を選んで、iOSのSourceからCocoa Touch Classを選んで「Next」ボタンをクリックして、名前に「NameAndColorCell」と付け、Subclass of:から必ず「UITableViewCell」を選んで所定の位置に保存します。

さて、これからこのクラスの設計をしていきます。

UITableViewCellクラスは、基本的にUIViewクラスのサブクラスです。

ということは、コードでViewクラスをインスタンス化するのであれば、初期化ステップを用意しなければなりません。

以前UIViewの初期化ステップの話をしました。

yataiblue.hatenablog.com

この頃の理解度からまだ進歩していませんね。まだNSCoderの意味は分からないのですが、このステップはUITableViewCellでも同じです。

override init(style: UITableViewCellStyle, reuseIdentifier: String?) {}とrequired init(coder aDecoder: NSCoder){}を実装しないといけません。

今日はここまで。

*1:このページを初めて覗いた人は、ここを見て、私のブログを勉強してトライしてください。もし分からなければ、コメントで質問して下さい。