Palm Programmer's Laboratory
Palm OS User Interface Guidelines/5-4
5-4 プッシュボタン
プッシュボタン(図 5.16 参照)はデスクトップアプリケーションにおけるラジオボタンに類似しています。これらはラジオボタンよりもスペースをとらないように設計されています。丸いボタンのスペースもテキストラベルのスペースも必要ありません。
プッシュボタンもポップアップリストも、一連の要素から1つを選択するために使用できます。プッシュボタンは全ての選択肢が一度に画面上に表示されるため、より容易に理解できます。ポップアップリストは選択中の要素以外の全てを隠してしまいます。また、プッシュボタンをタップする方がポップアップリストを操作するよりも簡単です。
図 5.16 プッシュボタンの例
表 5.5 プッシュボタンの詳細
指標 | 値 |
---|---|
幅 | 最低でもコンテンツ幅+2 同一グループのプッシュボタンは同じ幅にする |
高さ | 12 同一グループのプッシュボタンは同じ高さにする |
上端 | 可変 同一グループのプッシュボタンを同じにする(水平に並べる場合) |
1つめのボタン の左端 |
可変 |
ボタン(n) の左端 |
ボタン(n-1) の左端 + ボタン(n-1) の幅 + 1 |
境界線 | 1ピクセルの矩形 |
コンテンツ | テキストまたは画像をできるだけ小さく |
ラベル | ボタンの目的が明白でない場合には ラベルをつける |
システムが定める挙動
全てのプッシュボタンに同一のグループ ID を設定すれば、1つのボタンだけが選択可能になることをシステムが保証します。グループ内のボタンの1つをタップするとそのボタンがハイライト表示され、それまで選択されていたボタンはハイライト表示を解除されます。コマンドボタンとは異なり、プッシュボタンはペンを離してもハイライト解除されません。プッシュボタンはグループ内の別のボタンが選択されるまでハイライト表示され続けます。
ルールを破る場合
グループIDの設定を空にしておくことで、相互に排他的でないプッシュボタンを作成することもできます。実は、これはよくあるプログラミング上のミスでもあります。そのため、このようなインターフェースは機能ではなくバグのように見えがちです。
Date Book の Change Repeat ダイアログにおける Week ビューでは、週の曜日を表示するために排他的でないプッシュボタンを使用しています(図 5.17 参照)。このUI要素が選ばれた理由は明白です。それは、チェックボックスを並べる場合に比べて画面スペースをとらないためです。しかし、ユーザーはプッシュボタンのように見えるUI要素はプッシュボタンのように振る舞うものと考えるものです。図 5.17 に示すダイアログの曜日が選択されていない状態を見た多くのユーザーは、曜日を1つしか選択できないと思いこむでしょう。
図 5.17 排他的でないプッシュボタン