問題タブ [fragmentmanager]

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 投票する
3 に答える
27335 参照

android - getChildFragmentManager() を呼び出す場所は?

問題

Googleのドキュメントによると:

フラグメントをフラグメント内に埋め込むことができるようになりました。これは、動的で再利用可能な UI コンポーネントを、動的で再利用可能な UI コンポーネントに配置するさまざまな状況で役立ちます。たとえば、ViewPager を使用して左右にスワイプし、画面スペースの大部分を消費するフラグメントを作成する場合、フラグメントを各フラグメント ページに挿入できるようになりました。フラグメントをネストするには、フラグメントを追加する Fragment で getChildFragmentManager() を呼び出すだけです。これにより FragmentManager が返され、トップレベルのアクティビティから通常のように使用してフラグメント トランザクションを作成できます。たとえば、既存の Fragment クラス内からフラグメントを追加するコードを次に示します。

だから私は(例えば)TestFragmentのように見えました:

で、次のMainActivityようにフラグメントを初期化します。

次に、フラグメントをViewPagerviaに渡しFragmentPagerAdapterます。

最後に、例外が発生します。しかし、私だけを使用する場合:

その後、動作します。

質問

getChildFragmentManager()フラグメントのどこでメソッドを呼び出す必要がありますか? 私が間違っていることは何ですか?

新しい Android Nested Fragments を使用した良い例があれば、リンクを共有してください。どうぞよろしくお願いいたします。

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

android - ViewPager の android.support.v4.app.FragmentManager と android.app.FragmentManager

彼ら。

ViewPagerAndroid API 14 以降向けのアプリを開発していますが、Android サポート ライブラリに含まれているものを使用したいと考えています。

ViewPagerコンストラクタFragmentPagerAdapterで使用する必要があります。android.support.v4.app.FragmentManagerしかし、私の活動の範囲内では、android.app.FragmentManagerそれらが拡張されているという理由だけで明らかに持っていますandroid.app.Activity(ではありませんandroid.support.v4.app.FragmentActivity)。

に変換する方法はありますandroid.app.FragmentManagerandroid.support.v4.app.FragmentManager

活動を延長することFragmentActivityは、私にとって選択肢ではありません。

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

android - replace の使用時にフラグメントが onPause または onStop を呼び出さない

フラグメントを別のフラグメントに置き換えたときに、フラグメントが onPause や onStop などのエンド ライフサイクル メソッドを呼び出していないという奇妙な問題があります。このようにフラグメントを置き換えます

同じフラグメントが以前に表示された後、同じフラグメントを再度置き換えた後、popBackStack が原因で、onStart の前に onStop を呼び出しても、何らかの形でフラグメントを生かしていると思いますか?

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

android - 空白を残してフラグメントを非表示

私は3つのコンテナ(LinearLayoutも)を持つLinearLayoutを持っていますが、これらにはweight=1. そのレイアウトは次のとおりです。

これらのコンテナのそれぞれに、1 つのフラグメントを追加します。

したがって、これらは次のように配置されています。

ボタンをクリックすると、最初にコンテナと一緒にフラグメントを非表示にし、の右側にある新しいフラグメントを表示しfragment3ます。したがって、次のようなものがあります。

ボタンをクリックすると、これを使用してフラグメントを非表示にします。

コンテナと一緒にフラグメントを非表示にしますが、表示される画面は次のようになります。

ここでemptyは、完全に空、フラグメント、コンテナー、何もない、ただの空のスペースを意味します。

それで、私の質問は、そこに空白を残さずにフラグメントを非表示にする方法ですか?

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

android - ActionBar タブのフラグメント内でのフラグメントの追加/置換

ここで基本が欠けているかどうかはわかりません。アクション バー タブをホストするアクティビティがあります。つまり、ここに MainActivity の構造があります -> 2 つの ActionBar タブ F1 と F2 があります|| Frag.java は、置き換えられる FrameLayout を定義する xml をホストするコンテナー フラグメントです|| F1 は Frag1.java であり、Frag1.java は明らかに古き良きフラグメントです|| F2 は Frag2.java で、Frag2.java は別のフラグメントです MainActivity で2 のタブを作成します。これは起こりません。何が問題なのですか。

(理想的には、タブの下のフラグメントをボタンクリックイベントで別のフラグメントに置き換えたい)

これが私の主な活動です

MainActivity.java

そして、私の単純なフラグメントに来て、Frag、Frag1、frag2の3つのセットアップがあります

以下はfrag.javaです

以下は私のparent.xmlです

以下はfrag2.javaです

上記のフラグメントでは、ボタンのクリックがフラグメントを置き換えることになっていることがわかりますが、このフラグメントを配置することさえできません。

私は3日間からこれをジャグリングしています。ここで助けや提案をいただければ幸いです。または、誰かが私が間違っている場所を教えてくれれば素晴らしいでしょう!