web-dev-qa-db-ja.com

Android ActionBarフィルタリングのベストプラクティス

Androidリストビューがあり、指定されたフィルターに応じてコンテンツが変更されます

enter image description here

One of the filters

これらのフィルターされた結果に適用できる検索に加えて、2つのメニューフィルターがあります。検索は検索ボタンを介して呼び出されるので、現時点では問題ありませんが、迷惑な部分はフィルターの結果です。たとえば、ユーザーは結果を「スケジュール済み」、「開始済み」でフィルタリングしたいので、スケジュール済みのボックスをオンにしますが、メニューが閉じてデータが更新されるため、データを更新して「開始済み」を選択する必要があります。

これを処理するための最良のシナリオは何ですか?新しいボタンを追加することは良いオプションです。たとえば、メニューが閉じないようにできますか? 「すべて」の下にアイコンのある新しいアイテムを追加して、適用ボタンとして処理できるようにする必要があります。

5
Ahmed Kamal
  1. 選択時にメニューを自動的に非表示にする必要があるかどうかを決定します。ユーザーが入力を開始するまで(ただし、新規または再度)、開いたままにすることができ、結果(提案または実際のクエリ)は、ユーザーが入力しているときに後で引き継ぐことができます。

  2. オプションを水平に配置してみてください。1本の線で十分でない場合は、2つのレベルを使用してください

  3. これらすべてのオプションが本当に必要かどうか、もう一度確認してください。私が何度も見たように、検索するカテゴリーを選択/指定する必要はありません。

    また、私は現在モバイルデバイスを使用しているため、特に3番目の点について、適切な例を提供できません。

1

興味深い質問です。ユーザーがフィルターボックスで複数のアクションを実行することを期待している場合は、自動クローズを回避する必要があります。 関連記事はこちら Smashing Magazineに掲載。彼らが提供したスクリーンショットは多少古くなっていますが、概念としてフィルタードロワーをお勧めします。そのようなドロワーを閉じると、データは新しいフィルター値に従ってリフレッシュできます。

また、関連するノートでは、検索とフィルタリングが同じバーにあると少し混乱します。流れがはっきりわかりません。あなたはそれを再訪したいかもしれません。

これは、Android CyanogenMod ROMを思い出させます。ここにAndroid クイック設定ペイン があります。これは、右側から下にスワイプすると表示されます通知トレイの機能です。CynogenModは、ユーザーがアクションを実行したときにトレイを自動的に閉じるか維持できるようにするための設定を導入する必要がありました。トレイを閉じると面倒です:)覚えておいてください。

1
Sol

一般に、アプリケーションで複数のフィルターを選択できる場合、明確にするためにApplyボタンを配置する必要があります。

複数のフィルターを使用する場合、onItemSelectedListenerを使用することはお勧めできません。これは、前述したように、ユーザーに対して閉じられ、ユーザーの期待どおりに機能しないためです。

アプリにさらにフィルターを追加する予定がある場合は、スムーズに移行し、フィルターの別のアクティビティを上にスライドすることをお勧めします。フィルターにslide upトランジションを使用し、Applyの後にslide downを使用すると、サブアクティビティではなく、まったく別の活動とフローを提供します。

Zomatoがこれを行う方法の例を次に示します。

screen1

screen2

screen3

フィルターが選択されたときではなく、前に適用ボタンがどのように表示されるかを確認します。これにより、これらのフィルターを適用するには、[適用]をタップする必要があることをユーザーに認識させます。

アプリで後でさらにフィルターを追加する必要がある場合は、新しいアクティビティによって多くのスペースが作成されます。

1
Swapnil Borkar