Palm Programmer's Laboratory
Palm OS User Interface Guidelines/6-4
6-4 テーブル
テーブル(図 6.15 参照)は、データの集合を表示し、1つ以上のカラムに分けて管理するのに便利な方法です。
図 6.15 テーブル
表 6.5 テーブルの詳細
指標 | 値 |
---|---|
幅 | 160 (モードレスフォーム) 148(モーダルフォーム) |
高さ | 120 ピクセル(モードレスフォーム) 108 ピクセル(モーダルフォーム) |
行 | 高さ 12 ピクセル(単一行の場合) |
上端 | 18 |
左端 | モードレスフォームの場合 0 モーダルフォームの場合 4 |
境界線 | なし |
システムが定める挙動
テーブルは非常に設定の多いオブジェクトです。システムが定める挙動は、作成したテーブルの種類に強く依存します。Palm OS はテーブルの内部でのいくつかの UI 要素の使用をサポートします。すなわち、編集可能なテキストフィールド、チェックボックス、ポップアップリストです。Palm OS はこれらの要素がテーブルの外側にあった場合とまったく同じように機能することを保証します。
テーブルで編集不可のテキストを表示する場合、Palm OS はその要素がペンで押下された時にテキストがハイライトされ、ペンが離れた時にテキストがハイライト解除されることを保証します。ここで、選択されるのは1つの要素だけであることに注意して下さい。Palm OS は行全体の選択はサポートしていません。
ルック&フィール
テーブルには境界線やカラムヘッダはありません。これは、短期的にはわかりやすくても長期的にはスペースの無駄だからです。ユーザーインターフェースの見地からは、テーブルには2種類があります。すなわち、直接編集を行なうものとそうでないものです。
To Do リストのメインフォーム(図 6.16 参照)は直接編集できるテーブルの例です。一覧に新しい要素を追加するには、新規ボタンをタップします。そこから、タスクのテキスト入力やプライオリティ、および期限の設定、タスク完了時のチェックボックスを直接操作することができます。
図 6.16 テーブルの直接編集
アドレス帳のリストビュー(図 6.17 参照)は直接入力ができないテーブルの例です。このようなテーブルでは、要素がタップされた時にどのようなアクションをとるか決めなければなりません。ほとんどの場合、アプリケーションはその要素を編集するためのフォームを表示するべきです。
図 6.17 直接編集できないテーブル
前述のとおり、Palm OS では単一のテーブル要素しか選択することはできません。アプリケーションはそれぞれの要素の選択が独自の目的を持つようにデザインをする必要があります。
アドレス帳の一覧ビューにおけるテーブルを良く見てみましょう。このテーブルにはカラムが2つありますが、これらは普通のカラムではないようです。最初のカラムは連絡先の名前と電話番号・電子メールアドレスの両方を表示しています。2つ目のカラムは非常に狭く、その連絡先にノートが付けられている場合にノートアイコンを表示します。最初のカラムをタップすると、選択された連絡先の詳細情報が表示されます。2つ目のカラムをタップすると、(そこが空白だったとしても)その連絡先に関するノートを自由に入力できるノートフォームが表示されます。
同じような表示をするのであれば、おそらく連絡先の名前を最初のカラムに、電話番号を次のカラムに、そしてノートアイコンを3番目のカラムに配置したくなるでしょう。そのようなインターフェースは、電話番号をタップした場合と名前をタップした場合の挙動が異なる場合にのみ適しています。両者をタップした場合に表示されるフォームが同じであれば、名前と電話番号は同時にハイライト表示されるべきです。