問題タブ [activity-stack]

For questions regarding programming in ECMAScript (JavaScript/JS) and its various dialects/implementations (excluding ActionScript). Note JavaScript is NOT the same as Java! Please include all relevant tags on your question; e.g., [node.js], [jquery], [json], [reactjs], [angular], [ember.js], [vue.js], [typescript], [svelte], etc.

0 投票する
1 に答える
164 参照

android - How to start activity twice with different layout and not keep it in activity back stack in Android

I have activities flow:

BACK button in A1 and Home should close the app. So I call finish() on A1 when A2 is started and also on A2 when Home is started (thanks to that A1 and A2 are never kept on back stack).

However, BACK button in A2 should lead to A1 so I override in A2 (A1 is already finished as stated above so I have to start it again)

Now, it's possible to start again with button in Home the sequence

In this case (i.e. when A1->A2 is started after Home) layout of A1 should be a little bit different.

0 投票する
1 に答える
68 参照

android - 別のアクティビティからアクティビティ結果を返す

アプリAとBと言う2つのAndroidアプリケーションがあります。アプリケーションAはアプリBのメインアクティビティを開始し、を使用してデータを送信しstartactivityForResult()ます。

アプリ B では、メイン アクティビティ以外に処理を行う他のアクティビティがあり、それらはメイン アクティビティからチェーンされています。finish()アクティビティが処理を終了すると、次のアクティビティが呼び出されて開始されます。

アプリ A の結果は、チェーンの最後のアクティビティでのみ取得され、アプリ A に返してonActivityResult()コールバックで受け取りたいと考えています。

アプリ B (アプリ A からインテントを受け取った) のメイン アクティビティが終了したことを考慮して、アプリ A に結果を返す可能性はありますか?

前もって感謝します。

0 投票する
3 に答える
80 参照

android - Android - アクティビティ スタックのどのページ レベル (階層) にあるかを知る

Launcher アクティビティから始めて、アプリがどのレベル (階層) にあるかを知る方法が必要です。

たとえば、ユーザーがショッピング アプリにいて、次のパスをたどるイメージ:

  1. 主なアクティビティ ---> 2. 購入する靴のリスト ----> 3. ショッピング カート ---> 4. チェックアウト

したがって、チェックアウトはレベル 4 になります。ユーザーが購入する靴だけを見ている場合は、レベル 2 になります。レポートにはこれが必要です (しかし、情報が多すぎると思います)。アプリで自分がどのレベル/セクションにいるのかを知りたいだけです。アクティビティのライフサイクルでこれを追跡するために何かを設計するにはどうすればよいですか?

更新: level と呼ばれる静的変数があり、アプリで Application を拡張したので、アクティビティが開始するたびにそれを 0 にリセットできます。次に、私のアクティビティで onstart と onstop レベルを調整しますが、これがすべてのシナリオを処理するかどうかはわかりません。

しかし、それは機能していません。すべてのアクティビティ (少なくとも 50 あります) は、baseActivity という抽象クラスから拡張されています。Base Activity は、レベルをメインにしたい場所です。最終的な目標は、ユーザーがどこから来たかを追跡できるようにすることです。エンドユーザーがアクティビティに到達するまでにたどった経路を報告する必要があります

0 投票する
1 に答える
285 参照

android - アクティビティの以前のインスタンスを開いて再作成する方法は?

基本的に必要なのは、インスタンスを前面に移動するActivityたびに1 つ再作成し、他のアクティビティを破壊しないことです。startActivity()

たとえば、アクティビティスタックにある場合

A->B->C->D

DI から B を開きたい場合、現在使用しているフラグはFLAG_ACTIVITY_REORDER_TO_FRONT、Activity スタックをこの状態のままにするフラグです: A->C->D->B. アクティビティ スタック内のその順序は完璧ですが、そのフラグでActivityは再作成されずonNewIntent()に呼び出されます。

の複雑さのためにActivity多くのことをリファクタリングしたくないので、メソッドonCreate()でロジックを実行する代わりに、B を最初から再作成する (呼び出す必要がある) ことが必要です。onNewIntent()アクティビティ スタックは、 を使用した場合と同じ状態になるはずFLAG_ACTIVITY_REORDER_TO_FRONTです。何か案が?あなたの助けは大歓迎です。:)

0 投票する
0 に答える
84 参照

android - Android アクティビティ スタックをクリアする

処理する小さなAndroidアプリケーションを作成しましたがActivities、奇妙な問題に直面しています。

前の に移動できるかどうかを判断するにはActivity、次のコードを使用します。

基本的には、Integerアクティビティの合計に 1 を加えた状態の を返しますonStop(現在のActivity)。

起動時に、最初に a を実行しSplashscreenて非常に単純な情報を表示し、次に login に移動しますActivity

確実に2Activity stackに等しくならないようにするために、次を使用します。

この時点で、スタック内のアクティビティは1になると予想していますが、結果は2です。

どうして ?

ご協力いただきありがとうございます。

0 投票する
5 に答える
251 参照

android - 2 番目のアクティビティを開始し、最初のアクティビティに戻ることができない

私は自分のアプリケーションを完全に完全に閉じていると仮定します。(これ以上アクティビティ スタックはありません)

ただし、通知が届き、クリックするとユーザーは 2 番目のアクティビティに移動します。

問題は、2 番目のアクティビティを最初のアクティビティ (ランチャー) に戻してから終了する方法です。

戻るボタンを押した場合に直接終了する代わりに (スタックがないため)!?

2 番目の行為に移動する通知。