2

現在、戻るボタンに関するベストプラクティスは何ですか?

多くのアプリは、開いたときに(onStopとonDestroyedが実行された後)、アクティビティスタック全体を保存および復元します。たとえば、Facebookを開いて最後の場所が写真にあった場合、押し戻すと元に戻りません。 Facebookアプリを閉じると、数日前にアプリを開いたときに最初に行ったことが無限に戻ります。

この設計規則は、戻るボタンが期待するものとは少し異なると思います。通常、アプリを強制終了したり、メインビューを停止したりして、デバイスのランチャー画面に戻るために使用されます。

Facebookは、これを行うアプリの一例にすぎません。

この機能の有用性(アクティビティスタックを復元して戻るボタンをトラバースさせる)と他の機能(ビューを強制終了してユーザーをアプリから戻す)について説明している開発者向けの記事やGoogle I / Oのような信頼できる情報源はありますか?もしそうなら、ここでそれらについて話し合い、リンクしてください。戻るボタンの適切な使用と誤った使用があるため、これが主観的すぎると見なされないことを願っています

4

4 に答える 4

2

Android Developerサイトで、戻るボタンの予想される動作を変更してはならないことがわかります。OSに戻るボタンを処理させます。

アプリは、システムアイコン([戻る]ボタンなど)の期待される機能を再定義しません。

その見積もりは、CoreAppQualityページから抜粋したものです。

アップナビゲーションの使用を検討する必要があります。あなたはここでそれのために設計することについてもっと読むことができます:

最後に、さまざまなタイプのナビゲーション(横方向、祖先[上]、時間的、子孫)を実装する方法に関するチュートリアルがあります。こちらをチェック

于 2013-01-15T15:53:34.237 に答える
2

Facebookアプリが実際に行うことは、Androidの基本的なデフォルトの動作です。これらのアプリは、その動作に関して特別なことは何もしません。アクティビティスタックはデフォルトで保存されます。

これに関して引用されているブログの1つは、CommonsWareのBACKはBackを意味します。基本的に、「戻る」ボタンの機能は、今行っていた前のページに移動する必要があることを意味します。Androidでは、これが最後にプッシュしたアクティビティであることがよくあります。ユーザーがアプリを終了したい場合は、[ホーム]ボタンを押すと、常にアクティビティスタックがプッシュされ、ユーザーがホーム画面に移動します。

これが意味するのは、戻るボタンの機能は問題のアプリに完全に依存しているということですが、コンセプトはユーザーが行ったばかりのアクションを逆にすることです。ゲームをしている場合は、サブメニューに移動します。[戻る]ボタンをクリックすると、トップメニューに移動します。ブラウザを使用している場合、[戻る]ボタンをクリックすると、最後に表示していたWebページに移動する場合があります。ブラウザを使用していてトップページを表示している場合、ブラウザを開く前にユーザーが行った最後のアクションはアプリを開くため、ユーザーは[戻る]ボタンでアプリを閉じることを期待できます。ユーザーがダウンロードを開始した場合、[戻る]ボタンでダウンロードをキャンセルできます。

Facebookなどが検討する可能性のある機能の改善の1つは、ユーザーが最後の使用から中断されてから何をしたかを正確に思い出せない可能性があるため、x日後にスタックをワイプすることです。ただし、このユースケースは非常に小さいです。

全体として、これが人々が常にユーザビリティテストを強調する理由です。アプリのユーザーの99%が、戻るボタンを押したときに何を期待していたかを把握する必要があります。

于 2013-01-15T15:52:54.527 に答える
0

私の個人的な経験から、戻るボタンを長押しするだけで、前の画面に戻るためにバックプレスを使用しているほとんどを閉じることができます。
最良の例は、ネイティブブラウザかサードパーティブラウザかに関係なく、ブラウザアプリです。

于 2013-01-15T15:44:30.383 に答える
0

動作はアプリケーションロジックに依存すると思います。デフォルトでは、前の画面(バックスタックでのアクティビティ、またはフラグメントのバックスタックに保存されている場合はフラグメント)に移動することが望まれます。実際、この場合の特効薬はありません。「バックプレスされた実装」を好きなように使用してください。私のポイントは、バックプレスでは、アプリケーションは以前の論理状態で表示される必要があるということです。

于 2013-01-15T17:06:44.090 に答える