1

すべての設定が問題ないかどうかをチェックする中央のMainCheckerActivityが 1 つあります。このMainCheckerActivityは、多くのアクティビティ A、B、C などによって呼び出されています。

MainCheckerActivityが一部の設定が欠落していることを検出した場合、ダイアログが表示され、(現在) 終了するため、フローは呼び出し元のアクティビティ A、B、C... に戻ります。

次に、ユーザーは手動で A、B、C から SettingsActivity に移動する必要があります...

だから基本的に今:

A -> MainCheckerActivity -> shows the dialog -> finishes MainCheckerActivity -> A -> SettingsActivity 

次のように、ユーザーにとってより便利なロジックフローを実装するにはどうすればよいですか。

A -> MainCheckerActivity -> shows the dialog -> finishes MainCheckerActivity -> SettingsActivity -> A

どうもありがとう!

4

2 に答える 2

0

MainCheckerActivityをIntent.FLAG_ACTIVITY_NO_HISTORYで開始すると、タスクの履歴スタックに保持されません。MainCheckerActivityがSettingsActivityを起動した場合、ユーザーがSettingsActivityで「戻る」をクリックすると、MainCheckerActivityを開始したアクティビティ(つまり、説明からA、B、またはCのいずれか)に戻ります。

于 2012-07-07T11:35:30.253 に答える
0

Google マップ アプリケーションも同様のことを行います。GPS 衛星をオンにするのを忘れた場合、「現在地の精度を向上させるために GPS 衛星や Wi-Fi をオンにしますか?」などのダイアログが表示されます。ワークフローは次のとおりです。

  1. Google マップを起動しますMainActivity(「現在地」を検索します)。

  2. アプリは、GPS 衛星や Wi-Fi インターネットをオンにするのを忘れたことを認識します。設定を微調整するかどうかを尋ねるダイアログが表示されます。オプションは、「スキップ」(ネガティブ ボタン) と「設定」(ポジティブ ボタン) です。「デフォルトでこれを行う」もあります...設定要件がユーザーを怒らせ始めた場合に備えて、このようなものを追加することを検討してください。:)

  3. (a) 「スキップ」がクリックされた場合、ダイアログを閉じても、まだ にいMainActivityます。

    (b) 「設定」をクリックするSettingsActivityと が起動します。設定を変更します。終了したら、[戻る] をクリックします。変更が保存され、に戻りますMainActivity

MainCheckerActivityつまり、をアクティビティAB、および とマージするのが最善のアイデアのようCです。不要なアクティビティをなくすと、ほとんどの場合、ユーザー エクスペリエンスが向上します。:)

于 2012-07-02T22:53:04.877 に答える