問題タブ [back-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 投票する
2 に答える
450 参照

windows-phone-7.1 - Wp7.1で必要なページ名までバックスタックを削除するにはどうすればよいですか?

他のページにいるときに「F」と言う特定のページに到達するまで、バックスタックからページを削除したいと思います。ページ名のバックスタックを削除する可能性はありますか?

よろしく、カナヤ

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

android - Android:プログラムでアクティビティスタックにアクセスする

コードから現在のアクティビティスタックを取得することは可能ですか?

これが私のユースケースです:

  • ユーザーがアクティビティからアクティビティに移動する

A-> B-> c->D->..。

  • ユーザーを新しい画面に移動した後に終了するアクティビティもあれば、終了しないアクティビティもあります

  • 現在表示されているアクティビティにはアクティビティを終了するボタンがあり、ボタンのアイコンは天気が異なるため、[戻る]ボタンを押すとユーザーがアクティビティAまたはその他のアクティビティに移動するかどうかを確認する必要があります。アクティビティAまたは別のアクティビティ。

前もって感謝します、

さようなら、マウリツィオ

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

android - バックスタックに表示されずに外部アクティビティを起動する

外部activity(私のものではない) を一瞬だけ起動する必要があります。その後、ユーザーが表示できるようにservice以前のものを起動する必要があります。activity

これはうまく機能しますが、問題は、ユーザーが戻るキーを押すと、その外部に到達することactivityです。

ここには 2 つの異なるactivity起動があります。1 つは外部用で、もうactivity1 つはactivity戻るためのものFLAG_ACTIVITY_NEW_TASKです ( から起動するため、これを使用する必要がありますservice)。

FLAG_ACTIVITY_CLEAR_WHEN_TASK_RESETこれらの 2 つの起動では、FLAG_ACTIVITY_NO_HISTORYFLAG_ACTIVITY_NEW_TASKFLAG_ACTIVITY_CLEAR_TOPFLAG_ACTIVITY_CLEAR_TASK、の任意の組み合わせを試しました FLAG_ACTIVITY_EXCLUDE_FROM_RECENTS

activity何も役に立ちません。押し返した後、私は外部を見続けます。

ここで同様の質問をいくつか見ましたが、それらはすべて独自のアプリで中間のアクティビティを持っているため、finish を呼び出したりnoHistory="true"、マニフェストで設定したりできます。

何か案は?

更新: 問題は、サービスから以前のアクティビティを再起動することです。つまり、 Tasks and Back Stackのドキュメントから FLAG_ACTIVITY_NEW_TASK を指定する必要があります。

FLAG_ACTIVITY_NEW_TASK 新しいタスクでアクティビティを開始します。開始しようとしているアクティビティに対してタスクがすでに実行されている場合、そのタスクはフォアグラウンドに移動し、最後の状態が復元され、アクティビティは onNewIntent() で新しいインテントを受け取ります。これにより、前のセクションで説明した「singleTask」launchMode 値と同じ動作が生成されます。

そして、singleTask 段落から:

"singleTask" システムは新しいタスクを作成し、新しいタスクのルートでアクティビティをインスタンス化します... 注: アクティビティは新しいタスクで開始されますが、[戻る] ボタンをクリックすると、ユーザーは前のアクティビティに戻ります

したがって、この動作を何らかの方法でオーバーライドするフラグが必要です...

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

windows-phone-7 - バックスタック トゥームストーン wp7

アプリケーションでページの廃棄を完了したところ、現在表示しているページのみを廃棄することに気付きました。つまり、バックスタック内のページを返した後、すべてのメンバーが失われ、廃棄されないということです。現在のページを tombstone する方法についてですが、バックスタックページを tombstone することについては何もありません...これを行うエレガントな方法は何ですか?

私がどのように墓石を作っているかを示すために:

_tombstone には、廃棄後にページを再初期化する必要がある現在のページのすべての重要なメンバーが含まれています

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

android - Android のアクティビティ スタック

私はまだ Android を理解するのにかなり慣れていないので、アクティビティ スタックについて聞いたことがあります。

私が読んで理解したのは、各アクティビティに進むとスタックが作成され、スタックアイテムとして残されるということでした。

私の質問は次のとおりです。

  • アクティビティ スタックを削除すると、Android はより多くのメモリを節約できますか? 例えば。画像の多いアクティビティなど。

  • そもそもアクティビティ スタックを最初からやり直したいということを知って、アクティビティ スタックを削除した方がよいでしょうか?

2 番目の文で訂正しなければならないことがあれば、それもお知らせください。

0 投票する
14 に答える
321957 参照

android - バックスタック内の前のフラグメントにプログラムで戻る

プログラムでフラグメントが追加されたアクティビティがあるとします。

表示されていた前のフラグメントに戻る最良の方法は何ですか?

Androidのボタンクリックでトリガーバックボタン機能を見つけましたが、バックキーイベントをシミュレートすることは正しい方法ではないと考えています(また、動作させることもできません):

呼び出しfinish()は、興味のないアクティビティを閉じるだけです。

これについてもっと良い方法はありますか?

0 投票する
6 に答える
42703 参照

android - BackStack でフラグメント アニメーションを逆にする方法は?

次のコードを使用してフラグメントを使用しているときに戻るボタンが押されると、システムがバックスタックのアニメーションを逆にすると思いました:

0 投票する
2 に答える
3584 参照

android - 終了時に最近のタスクから taskAffinity を使用して singleTask アクティビティを削除するにはどうすればよいですか?

2 つのアクティビティがあるとします。

A - 「ホーム ランチャーが有効」なメイン アクティビティ (適切なインテント フィルターなど)

B - singleTask 仕様 (このアクティビティのインスタンスは 1 つしか存在できません) およびカスタム taskAffinity (メイン タスクと区別するため) を使用するタスク ルート アクティビティ根)。

B がタスクを表すと仮定します。これは、完了していない場合にのみ有効です。完了後に戻ったり、最近のタスクから再開したりすることはできません。

ある時点で、A が B を起動して新しいタスクを開始します。目標は、ユーザーが B を完了したときに B を最近のタスク リストから削除することです。ユーザーは B から他のタスクに移動し (ホームの長押しを使用)、完了していない限り B に戻ることができます。ランチャーから A を起動しても、B は異なるタスク アフィニティを持っているため、フォアグラウンドに移動しません。

Android は B をタスクのルートとして認識するため、B は完了しても最近のタスク リストに表示され、ユーザーはいつでもそれに戻ることができます。B を A のある 1 つのタスクに移動することは解決策ではありません。なぜなら、B が実行されている間、ユーザーは A と B のタスクを切り替えることができるはずだからです。B のマニフェストに excludeFromRecents を追加すると、最近のタスク リストから完全に削除されます。これも悪い解決策です。

それを達成する方法は?(私の悪い英語でごめんなさい)

0 投票する
2 に答える
2823 参照

android - Androidフラグメント/アクティビティで誤ってアプリが終了するのを防ぐ方法は?

Android で誤ってアプリを終了させないようにするにはどうすればよいですか?

IE: 戻るボタンを押して BackStack の最後のアクティビティに到達したら、onBackPressed() メソッドを使用してユーザーが終了するかどうかを尋ねるトーストを表示します。

また、フラグメントの backStacks で機能する必要があります。

0 投票する
2 に答える
831 参照

android - onBackPressed の Android BackStackEntry 上の NPE

アクティビティに読み込まれたフラグメントのバックスタック数を取得しようとしています。ここでの考え方は、getBackStackEntryCount が '0' を返す場合、onexitCheck() メソッドを実行してユーザーに終了するかどうかを尋ねますが、70 行目で getBackStackEntryCount() を取得する NPE を取得しています。

何が間違っているのかわかりません。私の方法を見て、あなたの答えに修正を加えてください。サンクス。