web-dev-qa-db-ja.com

ユーザーに年齢や誕生日を入力するように依頼する必要がありますか?

私は健康とフィットネスのアプリを作っていますが、アプリを使用しているユーザーの年齢を知りたいです。これに対処する最良の方法は何でしょうか?

現在、スライダーを使用してageを選択するか、日付ピッカーで生年月日を選択するかについて議論しています。個人的には、通常の日付ピッカーを使用して日付を選択するのは非常に面倒なので、スライダーオプションが好きです。ただし、スライダーを使用して年齢を選択するアプリは多くありません。

どれを使うべきかわからない場合は、ヒントがありますか?私は明らかに、ユーザーが簡単に年齢を入力できるようにする他のクリエイティブやアイデアを受け入れます。

7
TheBlueNotebook

スライダーを使用するには、適切な年齢になるまで、ユーザーがポインターを線に沿って前後に移動する必要があります。範囲はおそらく0-100であり、その長さによっては、解像度が厳しい場合があります。キーボードとマウスを切り替えたり、運動能力に問題のあるユーザーをサポートしたりすることについては、すべての知識を得ることができましたが、ここでは説明しません。

ユーザーが年齢を入力する簡単な方法が必要ですか? テキストフィールドを入力して入力してもらいます。

12
Ken Mohnkern

お気づきのように、標準の日付ピッカーは扱いにくいものです。何年も前に戻るか、100のオプションがある巨大なドロップダウンを取得する必要があるからです。また、その日付が30年前の何曜日であったかを気にすることも想定しています。

私はしばらく前にこの問題に取り組む必要があり、この解決策を考え出しました:

enter image description here

私のアプローチの概要は http://www.ericstoltz.com/2015/03/03/happy-birth-date-to-you/ にあります

6
Eric Stoltz

年齢の正確性はそれほど重要ではないため、次のレイアウトを検討することをお勧めします。

私はマルチデバイスエクスペリエンスを想定しており、100歳以上をサポートすることを想定しています(そうでない場合は、最後のセレクターを削除できます)。

重要なポイント:

  1. 100以上の要素のドロップダウンは、ナビゲートして選択するのが難しいため、スクロールを正確に行う必要があります
  2. スライダー-同じ概念、正確な年を選択するのは難しいかもしれませんが、スライダーは誰かが事前定義されたポイントで死ぬことを暗示するかもしれません(私はあなたが暗示するつもりはなく、そのポイントを避けたいと思います) 100-150、それが真実であっても)
  3. 年齢をより正確に理解したい場合は、彼らの干支について任意の質問をすることができます。煩わしい質問ではなく、デリケートなPIIとは見なされない
  4. 日付ピッカーは良いオプションのように思えるかもしれませんが、それでもユーザーに彼らが生まれた年を選択するように求めます(スライダーまたはドロップダウンパターンは、年の範囲を考えると、依然として過度に複雑です)
  5. 3番目のセレクターは、最初のセレクターで指定した値に応じてアクティブ化および非アクティブ化できます。

Age Selector

4
Igorek

これが私の考えです。

  • ユーザーの「生年月日」ではなく「現在の年齢」だけが必要であるという事実を考慮すると、Sliderは非常に楽しい入力方法ですタイピングではなく年齢。

  • Date Pickerは、正確さを必要としないため、扱いにくく、やり過ぎです。

提案:

スライダーよりもさらに楽しいのはWheelです。 ループ-ミュージックプレーヤー はホイールをボリュームコントロールとして実装します。これは非常によく機能します。

数字がホイールの真ん中にあると想像します。増減の割合は、ホイールのダイヤル速度によって決まります。さらにユーザーフレンドリーにするために、ターゲットユーザーの年齢層に合わせて調整できます。

そうは言っても、ホイールはスライダーよりもはるかに多くのスペースを占めるので、それを使用するかどうかは、画面にある他の要素によって異なります。

幸運を!

3
stringtheory

最終的には、NumberPickerを使用することにしました。私が使用する予定のドラフトを添付:

The calendar image is clickable

カレンダーをクリックすると、有効な生年の範囲のみを示すダイアログボックスが開きます。

enter image description here

2
TheBlueNotebook

1つのセッションのデータ

セッション後にデータを破棄する場合は、スライダーを使用して経過時間を簡単に取得できます。年齢層を使用している場合は、ラジオボタンの動作(スタイル付き)などのより単純なパターンをお勧めします。

未回答と指定された年齢を区別できることを確認してください(特に、ユーザーが入力している可能性がある場合は、疑似ヌルとして0を使用しないでください) 6か月の古い子供のために:1900年1月1日をnull値として使用しないでください)。

ただし、データ入力時に年齢データを将来保存する際に年齢データを使用したい場合は危険です。 (少し前にこの人は27でしたは役に立ちません。2016年1月8日、この人は25の間でしたそして30はあまり良くありません)

将来の年齢

将来的に年齢データを使用する場合は、DOBがはるかに簡単なモデルです。誰もが自分のことを知っていますが、多くのユーザーは正確な年齢について考える必要があります。40歳以降はそれほど心配する必要はありません。あなたが十代の間に1/2と3/4について心配するのをやめたように。

アメリカ人とYYYY-MM-DDカルチャにローカライズすることを確認してください。限られたUI(ここではウェアラブル)では、YYYY-MM-DD形式を使用して、ロケールがわからない場合のmm-ddとdd-mmの混乱を避け、ユーザーのうるう年の問題を最小限に抑えました。

0
Aidan Hall

年齢を入力する場合、年齢を数える国がかなり異なることに注意してください。

  • 西部では、ほとんどの人が出生時に0です
  • アジアでは出生時に1人の人がいます
  • 一部の人々は中国の旧正月まで0であり、1です。

1年間の休暇で大丈夫でない場合は、おそらく日付を尋ねる必要があります。または、年のスライダーを用意して、生まれた時期を調整できるように提案します。

0
Kit Sunde