このページは「iPhoneプログラミング入門」(工学社刊、ISBN 978-4-7775-1541-7)を読んで、もっと先へ進んでみたいと思った人への説明です。
次へ->
<-前へ
「次の一歩」一覧へ
最も簡単なテーブルの作り方7
インターフェイス・ビルダー上での作業
今はどうなってたんだっけ
インターフェイス・ビルダーで開いているのはFirstTableViewController.xibですから、「File's Owner(本書ではファイル・オーナーと呼ぶことにしてしまいました)」はFirstTableViewControllerクラスのシングルトン・オブジェクトです。
FirstTableViewControllerクラスには、UITableViewクラスのプロパティtheTableViewを、IBOutletキーワードをつけて、宣言してあります。
一方、インターフェイス・ビルダー上に配置したのは「Table View」オブジェクトで、名前を「TheTable」にしてあります。
見かけも中味も結びつける
ですから、TheTableとファイル・オーナーを結びつけます。しかし、今回は、「インターフェイス・ビルダー上の部品と、ファイル・オーナーのプロパティ」だけではありません。
理由は、インターフェイス・ビルダー上の「テーブル」は見かけだけでなく、「中味」もファイル・オーナーと結びつける必要があるからです。
TableViewにちゃんとある「delegate」と「dataSource」
もっと具体的な理由は、FirstTableViewControllerクラスが、UITableViewDelegateとUITableViewDataSourceという二つのプロトコルを実装しているからです。
まぁ、一言で言って「めんどくさそッ」ですよね。でも、大丈夫です。
インターフェイス・ビルダー上で、オブジェクトTheTableのコネクション・パネルを出してみてください。「Outlets」と見出しのついた区域に「dataSource」と「delegate」という欄がちゃんと用意されていますね。これらをファイル・オーナーと結びつければいいんです。
おなじみの作業「Referencing Output」
本書でも何度もやった作業から、まず始めましょう。TheTableのコネクション・パネルで「New Referencing Output」の欄の右端の丸印(連結点)から、ドキュメント・ウィンドウ上のファイル・オーナーのアイコンまで「連結線」を引っ張ります。
ファイル・オーナーのアイコンに「theTableView」という項目が表示されたら、それを選びます。これで「見かけ」は結びつきました。
他は、ファイル・オーナーと直接連結
TheTableのコネクション・パネルで確認した「dataSource」と「delegate」も、右側の連結点から、「ファイル・オーナー」アイコンに連結線を引っ張ります。しかし、「部品」の連結を行うときのような「選択肢」は出ません。線を引っ張れば、「dataSource」と「delegate」のいずれも、「File's Owner」と結びつきます。
動作の確認
さぁこれで、ひとまず実行できる状態になりました。NIBファイルやプログラムファイルを全て保存したら、アプリケーション「FirstTable」を実行してみましょう。「Red」「Green」「Blue」という文字列がテーブルに表示されましたね。これでようやく、「最も簡単なテーブル」の完成です。あれっぽっちのテーブルを出すのに、ここまでやらなければならないのですョ。それも、まだ完全ではないのです。メモリを節約し、動作を速くするために、「セルを使い回す」ように動作を変更しないと、開発者の風上にも置けないと当局(どこの?)から叱責をくらってしまうでしょう。