8章テーブルビュー

これから大事な質問を3つするよ。——どうぞ。——きみを作ったのは誰?——あなたですよ。——きみのいちばん大きなかけらをもっているのは誰?——あなたですよ。——もしきみを落としたらどうなるの?——そのまま下水に流れてしまいますよ。

Garson KaninおよびRuth Gordon作の会話 映画『パットとマイク』

テーブルビュー(UITableView)は長方形のセル(UITableViewCell——UIViewのサブクラス)が縦一列に並んだものを表示するスクロールインタフェース(垂直方向にスクロールするUIScrollView、7章参照)です。小さいiPhoneの画面を便利で強力なものにするというAppleの戦略のなかでも中心的な役割をなすもので、以下の3つの目的があります。

  • 情報の提示——セルにはたいてい文字が表示されており、ユーザーに読ませるためのものです。スクリーン上に表示できるセルの数をできるだけ増やしたいので、セルは通常かなり小さく、したがって表示されている文字列も字間が詰まっていたり、途中までであったり、何らかの形で省略されていたりします。
  • 選択——セルはタップすれば選択されます。テーブルビューはこの仕組みにより選択肢の並びをユーザーに提供できます。ユーザーはセルをタップして選択肢を選び、アプリはその選択肢に応じて適切に反応します。
  • ナビゲーション——ユーザーがセルを選択したことに対する適切な反応が、他のインタフェースへの移動(ナビゲーション)であることがよくあります。移動を実現する手段としては、ビューコントローラの提示やナビゲーションインタフェースが使われます(6章参照)。中でも特によく使われるのが「一覧-詳細(master-detail)」インタフェースで、一覧画面にはテーブルビュー(画面の一部のこともあります)が使われ、ナビゲーションインタフェースのルートになっていることがほとんどです。ユーザーがテーブルにある一覧をタップすると、選択した項目の詳細画面に移動します。テーブルビューに表示する文字列を省略することが許される理由のひとつがこれで、詳細画面にはすべての情報が表示されます。 ...

Get 詳解 iOS SDK 第4版 ―ワンランク上のiPhone/iPadプログラミング now with the O’Reilly learning platform.

O’Reilly members experience books, live events, courses curated by job role, and more from O’Reilly and nearly 200 top publishers.