web-dev-qa-db-ja.com

複数の「アラート」ポップアップを処理しますか?

私たちが作成しているiPadアプリケーションは、さまざまなエラー条件に対して警告ウィンドウをスローします。デフォルトのアラートウィンドウはかなり煩わしいので、アラートのカスタムUIの構築を検討しています。私の質問は、どのようにアラートを積み重ねるのですか?たとえば、アプリの2つの部分が2つの異なるアラートをスローする場合、2つの問題が発生したことを示す最善の方法は何ですか。 1つの考えは、発生した最初のエラーのみを表示することです。もう1つは、アラートを次々に表示することです。そのため、ユーザーは「OK」を2回クリックする必要があります。もう1つは「2つの問題が発生しました:ここに1つあり、もう1つに問題があります」のようなものですが、エラー2の問題は、エラー1の後、ユーザーがアラート1を閉じるオプションを選択する前に発生する可能性があります。

複数のアラートメッセージをグループ化するための優れたUIパターンを見た人はいますか?

7
Arpit

AppleがFinder Mac OSでそれを行う方法は次のとおりです。

alt text

alt text

5
Hisham

アラートは好きではありませんが(私が知っていることです)、複数の非同期メッセージの場合、「うなり声」インターフェースはこれまで非常に魅力的です。 「通知」用のいくつかのjQuery固有のプラグインを確認した後、次のことはかなり役に立ちました。

http://pines.sourceforge.net/pnotify/

簡単なデモをクリックして、ページの右側にあるJavaScript通知を確認してください。

8
ericslaw

ここでの重要な考慮事項:ユーザーを中断する必要がありますか?

エラーはポップアップに表示する必要がありますか、それともアプリのフローに表示できますか?例えば。それは例外ですか、それとも通知ですか? 「ページを読み込めませんでした」は、「リツイートが失敗しました。Twitterが応答しませんでした。」のような意味と重みは異なります。

それらの違いについて考えることは、いくつかの考えにつながります。

  • 重大なエラーの場合は、アプリのフローを中断してユーザーに警告する必要があります。 "ページを読み込めませんでした"はポップアップする必要があります。これは、並行して発生する可能性があるものがないためです。
  • Twitterアプリでの「リツイートに失敗しました」などの重大ではないエラーは、ユーザーのアプリの使用を中断するため、フローを中断するべきではありません。これは通常、読み取りや書き込みのようなものです。
  • ユーザーは何をしていますか?ユーザーがいくつかの順次タスクを実行している場合。フォームに入力し、グループ化されたさまざまなエラーをユーザーに表示します。
  • 問題から抜け出す方法を設計することを検討してください。たとえば、エラーをエラーとして扱わないでください。 「retweet」の例では、Twitter APIは外部依存関係であるため、UIでのユーザーへのフィードバックを含め、Twitter APIへの呼び出しはすべてフォールトトレラントである必要があります。これは、ユーザーがアプリを認識する方法に影響します。例外が発生するたびに常にエラーをポップアップする場合、ユーザーは彼女を妨害する不安定で迷惑なアプリを認識します。エラーをインライン化し、Twitterが時々ダウンする可能性があるために発生する不可避の通知として表示する場合、まったく異なる方法で遭遇します。
  • IPadのプラットフォーム規則を見てください。 Appleヒューマンインターフェイスガイドラインを参照し、主要なアプリを確認してください。iPadでの私の経験では、アプリにエラー状態がほとんどないということがありました。これは、優れたテストまたはデザイナーがアプリから考えられるエラー状態を設計したという事実。この例を考えてみましょう。Webフォームで、特定の特定の形式で電話番号を要求すると、ユーザーが誤って入力する、考えられるエラー状態が導入された電話番号ですが、どの形式でも受け入れる場合は、ユーザーが気にする必要のある問題は1つ少なくなります。iPadアプリのデザイナーがそのようなデザインに傾いているのではないでしょうか。

私がこれを書いている間に真実に答えを投稿しました、そしてそれは非常に具体的で技術的に見えます。うまくいけば、私の答えがいくつかの高レベルの思考の糧を提供することができます。

3
Rahul

ハウル

HowlはiPad向け、GrowlはMac向け

multiple alerts

複数のアラートを自動的にスタックできます。重大なアラートでない場合、アラートは1秒後にフェードアウトする可能性があります。ユーザーが閉じる必要のあるアラートを作成することもできます。 Growlは多数のMacプログラムで使用されていますが、Howlの人気度はわかりません。

3
neoneye

Apple製品にはWindowsパターンを使用したくない場合があります。

考慮すべきいくつかのパターン。 (Windowsから)

  • タスクバーの通知アイコンは一度に1つのメッセージを表示し、メッセージを閉じるかタイムアウトすると別のメッセージが表示されます。

  • 一部のメッセージはスタックされ、後続の各メッセージは数ピクセル下および右に移動されます。

  • 一部のメッセージ(JSのアラートなど)は応答するまでブロックするため、一度に1つしか存在できません。

  • 一部のメッセージ(セキュリティリスクに対するWindowsシステムアラートなど)は1つのボックスに表示されますが、すべてのメッセージが表示されます。

  • StackExchangeサイトは重要な通知を上部に配置し、重要度の低い通知はアクションを実行した後にポップアップする場合があります。

私はあなたが何を構築しているのか正確に知らないので、提案をするのは難しいですが、排除のプロセスを通してそれを絞り込むことができます。

画面ピクセルが限られているため、メッセージを1つのボックスにグループ化すると、画面スペースの多くを奪う可能性があります。

重大なエラーがない限りアプリケーションをブロックしたくないので、JSスタイルのアラートはおそらく出力されません。

画面スペースが不足しているため、非ブロッキングポップアップのスタックは再び機能しません。

これはあなたにいくつかのオプションしか残していないと思います。クリックしてもブロックされず、消えたり消えたりしないポップアップ(ウィンドウのタクスバーの通知アイコンの泡やStackExchangeの小さな通知など)または通知領域(StackExchangeの上部のバーなど)

2
Sruly

おそらく、透明な道路標識スタイルのアラートをポップアップして、右上隅または右下隅に残しておきます。

エラーが発生するたびにシンボルを表示し、別のエラーが発生した場合はアラートを明るい色で点滅させ、エラーの横にカウンターを追加して、受信したエラーの数を示すことができます。シンボルとカウンターに加えて、1つまたは2つのWordラベルが必要になる場合があります。短くて要点のあるものが不動産を節約するのにおそらく最善でしょう。

ユーザーがアラートをプッシュ(クリック)すると、エラーのリストがボックスに表示されます。

1
LoganGoesPlaces