忍者ブログ
2024 / 09
≪ 2024 / 081 2 3 4 5 6 78 9 10 11 12 13 1415 16 17 18 19 20 2122 23 24 25 26 27 2829 30 2024 / 10 ≫

×

[PR]上記の広告は3ヶ月以上新規記事投稿のないブログに表示されています。新しい記事を書く事で広告が消えます。



テーブルを実装するために必要なこと

・テーブルのレイアウト(View の構築)
・テーブルの内容(Cellにデータを提供)
・ユーザの操作に対する応答(Cellの選択等のユーザ操作に応答するためのデリゲードメソッドの実装)

Viewのレイアウト
 UITableView でiPhoneの画面に表示する。
 UITableView は UIScrollView クラスを継承するため、テーブルのスクロールが可能。
TableView を作成するには、割当( alloc )、初期化( initWithFrame )、データソースとデリゲートオブジェクトを割り当てる。
レイアウト作業を引き受けるのが、 UITableViewContoroller。
UITableViewContoroller は、標準の UIViewContoroller を作成し、それに UITableView を設定し、ナビゲーション、ツールバー等を追加するためのフレームワークを設定する。

このテーブルビューは、 tableView インスタンス変数を通じてアクセスできる。

UITableViewContoroller のサブクラスを作成するときに子の layoutView メソッドから [ super layoutView ] を呼び出さないといけない。

データソースの割当
テーブルとテーブルセルは別個に存在する。
UITableView インスタンスは新しいテーブルまたは既存のテーブルセルを必要に応じて設定し、外部ソースに依存する。
データソースは、インデックスパス( NSIndexPath )に基づいてテーブルセルを提供する。
オブジェクトをデータソースとして割り当てるには setDataSource: を使わなければいけない。
そのオブジェクトは UITableViewDataSource プロトコルを実装しなければいけない。
ほとんどの場合、テーブルビューを所有する UITableViewController が、そのビューに対するデータソースの役割を果たす。

データを割り当てた後は、テーブルの reloadData を呼び出すことにより、実際の画面に表示される。

デリゲードの割当
UITableView はデリゲードを使ってユーザの操作(スクロールや選択)に応答する。
通常は UITableViewContoroller をテーブルから取得する。
UITableView を直接操作する場合は、setDelegate: を使う。
UITableViewDelegateプロトコルを実装しないといけない。ただし、UITableViewContoroller を操作する場合は UITableViewContoroller 自動的に処理される。

UITableViewContoroller の役割
テーブルビューを管理する UITableViewContoroller に UITableView を埋め込む。
そのビューは、 tableView という名前であり、 self.tableView の呼び出しで直接アクセスできる。
テーブルビューのデータソースとデリゲードメソッドを自動的に自信に設定する。
setEditing:animated: 呼び出しを通じて自動的に親のナビゲーションバーに Edit|Done ボタンを追加するときに編集モードを自動的に実装する。

Table View を扱うにあたって下記のiPhone Dev Center にあるプログラミングガイドを読んでおくと役にたちます。

iPhone OS Table View プログラミングガイド


PR


08 2024/09 10
S M T W T F S
1 2 3 4 5 6 7
8 9 10 11 12 13 14
15 16 17 18 19 20 21
22 23 24 25 26 27 28
29 30
HN:
cow

自己紹介:
iPhone購入がきっかけでiPhoneアプリの制作にチャレンジ!