Palm Programmer's Laboratory
Palm OS User Interface Guidelines/5-5
5-5 セレクタトリガー
セレクタトリガー(図 5.18 参照)は単一のフィールドあるいはオプションのためのコントロールです。タップすると値を変更するためのモーダルフォームが表示されます。フォームが閉じられると、セレクタトリガーは新しく選択された値を表示するように更新されます。
※訳注 上の段落の最初の文は以下のとおりです。 意味がとれなかったので乱暴な訳をして しまいました。 Selector trigger (see Figure 5.18) provides a value for a single field or option.
図 5.18 セレクタトリガー
表 5.6 セレクタトリガーの詳細
指標 | 値 |
---|---|
幅 | システムが決定 |
高さ | 13 ピクセル またはコーナーのピクセルが黒色になるような奇数値 |
上端 | 可変 |
左端 | 可変 |
境界線 | 1ピクセルの点線による四角形 |
コンテンツ | 現在の値をテキストで表示 |
ラベル | 通常は値を説明するためにボールド体のラベルが別途必要 |
システムが定める挙動
ユーザーはスタイラスを使用してトリガーを1回タップします。この際、Palm OS はペンで押下されている間だけトリガーをハイライト表示します。ペンを離す前にトリガーの領域外までペンをドラッグした場合、トリガーが選択されないことが保証されます。
ルック&フィール
セレクタトリガーの外観と挙動については、以下のガイドラインに従って下さい。
セレクタトリガーはモーダルフォームを表示する
アプリケーションはセレクタトリガーがモーダルフォームを表示し、復帰時にはセレクタトリガーのコンテンツをそのモーダルフォームで設定した値で更新するようにしなければなりません。
複数のステータスをトグルするためのトグルボタンとしてセレクタトリガーを使用してはいけません。状況によりますが、そのような目的にはコマンドボタンまたはチェックボックスの方が適しています。
必要ならラベルをつける
通常、セレクタトリガーが何の値を設定するかを示すボールド体のラベルを配置します。セレクタトリガーの配置や設定によってトリガーの目的が明確な場合、ラベルは省略することができます。たとえば、アドレス帳の編集フォームにおけるタイトルバー内のセレクタトリガーにはラベルがありません。これは、その配置や設定内容からカテゴリであることが明白だからです。
ルールを破る場合
このセクションでは、セレクタトリガーのガイドラインから外れる一部のアプリケーションについて言及し、ガイドラインに従わないのが適切なケースについて説明します。
更新されないセレクタトリガー
ユーザーが値を選択しても表示を更新しないことが許されるのは、パスワード用のフィールドとしてセレクタトリガーを使う場合に限られます(図 5.19 参照)。パスワードが最初に設定された時、フィールドを“Unassigned”から“Assigned”に変更します。それ以降は、パスワードが変更されてもセレクタトリガーは“Assigned”のままになります。
図 5.19 パスワードのためのセレクタトリガー
それ以外の全てのセレクタトリガーは、現在の選択内容を示すように更新するか、選択内容が変更されたことをなんらかの方法で示さなければなりません。パスワードのセレクタトリガーが“Unassigned” から “Assigned”に変化するのを、普通のセレクタトリガーよりも低い「解像度」で現在の値を表示するように更新しているとみなすこともできるでしょう。表示上隠されているべき値を変更したいのであれば、これは許容できる考え方です。まったく更新されないトリガーを作成したいのであれば、かわりにコマンドボタンを使用することを検討してみて下さい。
※訳注 上の段落の「解像度」という部分のカギ括弧は、 比喩的な表現であることを示すために訳出にあ たって付加しています。
モーダルフォームを表示しないセレクタトリガー
セレクタトリガーによっては、タップしてもモーダルフォームが表示されない場合があります。アドレス帳やメモ帳の編集フォームはセレクタトリガーを使ってレコードのカテゴリを表示しています(図 5.20 参照)。このセレクタトリガーをタップすると、モーダルフォームではなくカテゴリのリストが表示されます。
図 5.20 リストを表示するセレクタトリガー
これら2つのフォームでは、他のフォームに見られるカテゴリポップアップリストとは異なる機能を持つコントロールであることを伝えるためにポップアップリストではなくセレクタトリガーを使っています。他のフォームでは、カテゴリポップアップリストは単純に表示されるレコードをフィルタリングしています。対照的に、これらのフォームのカテゴリセレクタトリガーは編集中のレコードが所属するカテゴリを変更し、どのレコードが表示されるかは変更しません。
なぜこのカテゴリセレクタトリガーはカテゴリを変更するためのモーダルフォームを表示しないのでしょうか? そうすればセレクタトリガーのガイドラインには適合することができるでしょう。しかし、それによってこの作業に要するタップ回数は2回から4回に増えてしまいます。アプリケーションデザイナは、この件に関してはガイドラインの順守よりもタップ回数を減らすことの方が重要だと判断したのです。初心者ユーザーは詳細ダイアログを使ってレコードのカテゴリを設定する傾向があることを覚えておきましょう。
そうは言っても、これら2つのフォームにおけるカテゴリセレクタトリガーは良く言っても不十分なソリューションとみなされています。ユーザーによってはこのコントロールが配置されている場所から直ちにその目的を理解しますが、他のユーザーはメインフォームの表示を制御するカテゴリポップアップリストと混同してしまいます。