問題タブ [fragment-backstack]
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.
android - AndroidでBackStackからフラグメントをロードする方法
フラグメントに 4 つのボタンがあります。ボタン「A」をクリックすると、フラグメントがロードされます。ボタン「B」をクリックすると、別のフラグメントがロードされます。私の問題は、もう一度ボタンをクリックしたときです。新しいフラグメントがロードされています。backStack から前のフラグメントをロードしたい。
では、どうすればそれを達成できますか?
android - Androidのバックプレスされたフラグメントからメニューを削除する方法
電話とタブレットの両方でサポートする必要があるアプリケーションを開発しています。このアプリケーションでは、Android のフラグメントを使用しています。
申し込みの流れはこんな感じ
MainActivity --> Fragment1 --> Fragment2
このアプリケーションでは、アクティビティのメニュー項目とともに Fragment2 にのみ表示されるメニュー項目が必要です。
だから私は、MainActivity に globle メニュー項目を追加し、Fragment2 に MainActivity のメニュー全体を Fragment2 固有のメニューに置き換えるような 1 つの解決策を試しました。
onCreateView 内で、このメソッドを実装します。
今では電話のレイアウトでは問題なく機能しますが、タブレットになると問題が発生します。
これが私のスクリーンショットです。
フラグメント 1
キーボードで 9 を押したときの Fragment 1 と Fragment 2 の組み合わせ (タブレット モード)。
最後に、もう一度 9 を押して pHone ビューに戻ると、追加のメニュー項目が表示されます。
Image で余分なメニュー項目をマークしました。では、なぜこの私が来るのか、どうすれば解決できますか?
android - バックスタックが期待どおりに機能しない
アクティビティ A と B があり、どちらも BaseActivity クラスから継承しています。アクティビティ A はいくつかのフラグメントを処理し、そのうちの 1 つからアクティビティ B が開始されます。Activiy BI の onCreate メソッドで、次のメソッドを呼び出します。
Base Activity クラスによって受信されます。
そのため、ExampleFragment がアクティビティに追加され、下のアニメーションからスライドインして表示されます。次に、ExampleFragment は同じメソッドを Example2Fragment に呼び出しますが、次のように削除する前に
Example2Fragment から呼び出します。両方のトランザクションがバックスタックに追加されることを強調したいと思います。これまでのところ問題はありませんが、問題はバックスタック ボタンを押したときです。予期される動作が ExampleFragment に到達すると、フラグメントのない空のアクティビティに戻ります
バックスタックは実際にどのように機能しますか? ここで何が欠けていますか?
ありがとう
android - Fragment バックスタックの ListView はまだ getView() を呼び出しています
別のsayを含む別の Fragment を追加すると、 sayFragment
を含む a があります。ListView
FragmentA
ListView
FragmentB
最上位のフラグメントが now であるにもかかわらず、getView()
ofがまだ呼び出さListView
れていることに気付きました。この動作を防ぐ理由と方法を教えてください。FragmentA
FragmentB
android - Androidでバックスタックを使用する
Android のフラグメント ナビゲーションに問題があります。あるフラグメントから別のフラグメントへ、またそのフラグメントから別のフラグメントへとナビゲートしています。戻るボタンを押すと、3 番目のフラグメントから最初のフラグメントに移動する必要があります。バックスタックからの 2 番目のフラグメントを避ける必要があります。
FragmentManagerにフラグメントを追加するために使用しているコードは次のとおりです
助けてください
android - PopBackStack ただし、最初のフラグメントを Android に保持する
私はフラグメントトランザクションに取り組んでおり、バックスタックは次のようになります:
fragD から戻った後、fragA に戻りたい
だから、私は次のようなコードを試しました:
しかし、すべてのバックスタックをクリアします。どうすれば最初のフラグメントをバックスタックに保持できますか? どうもありがとう
android - 戻るボタンを押しても追加されたフラグメントが表示されない
活動をしています。開始すると、replace を使用して onCreate に Fragment A をロードします。これはバックスタックには追加されません。
次に、オーバーレイであるフラグメント B を前のフラグメントの上に追加します。これは、フラグメント B の背景が半透明であるため、フラグメント A をその背後に表示できるようにしたいためです。これは add を使用してロードされ、バックスタックに追加されます。
フラグメント B から、置換を使用してフラグメント C を読み込み、バック スタックに追加します。これは、フラグメント C がフラグメント B のようなオーバーレイではないためです。フラグメント C にいるときは、バック プレスでフラグメント B に戻りたいと考えています。バックプレスをオーバーライドして、バックスタックをポップします。
問題は、[戻る] ボタンを押すと、フラグメント B ではなくフラグメント A が表示されることです。デバッグしたにもかかわらず、バック スタックにフラグメント B が表示されます。どうしてこれなの?
android - android バックスタックをポップする前に次のフラグメントを表示
互いに置き換え続けるフラグメントがいくつかあります (トランザクションがバックスタックに追加されます)。ある時点でのユーザーの操作に応じて、以前のフラグメントのすべて (または一部) をクリアし、新しいフラグメントを 1 つだけ表示する必要があります。
これを行うには、現在、popBackStack()
最初にそれらをクリアしてから を実行しますreplace()
。これは期待どおりに機能します。ただし、新しいフラグメントが表示される前に、前のフラグメントのフラッシュが発生することがあります。これは、新しいフラグメントを表示する前に最初にバックスタックをポップしているためだと思います。
だから、最初に新しいフラグメントを表示してから、以前のトランザクションのバックスタックをクリアする簡単な方法があるかどうか疑問に思っていますか?