問題タブ [android-nested-fragment]
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 - ViewPager に追加されたフラグメントで getChildFragmentManager() を使用できません
ActionbarSherlock
、SlidingMenu
、およびを使用しているアプリがありViewPager
ます。このアプリはうまく機能しますが、Nested Fragment を使用して に導入しようとしていViewPager
ます。
現在、各ページに 1 つのフラグメントがありますがViewPager
、携帯電話またはタブレットに表示している天気に応じて、ページ フラグメントに 1 ~ 4 個のネストされたフラグメントが必要です。したがって、電話を使用している場合は、14 ページあると言えますがViewPager
、タブレットでは、ネストされたフラグメントを使用してこれらのページを結合したいと考えています。
これが私がやろうとしているコードですが、使用することはできませんgetChildFragmentManager()
。それgetChildFragmentManager()
は未定義であると述べています:
私が間違っていることを誰かが知っていますか?また、最新のサポート ライブラリを使用していることも確認しましたActionbarSherlock
。
android - getChildFragmentManager() を呼び出す場所は?
問題
Googleのドキュメントによると:
フラグメントをフラグメント内に埋め込むことができるようになりました。これは、動的で再利用可能な UI コンポーネントを、動的で再利用可能な UI コンポーネントに配置するさまざまな状況で役立ちます。たとえば、ViewPager を使用して左右にスワイプし、画面スペースの大部分を消費するフラグメントを作成する場合、フラグメントを各フラグメント ページに挿入できるようになりました。フラグメントをネストするには、フラグメントを追加する Fragment で getChildFragmentManager() を呼び出すだけです。これにより FragmentManager が返され、トップレベルのアクティビティから通常のように使用してフラグメント トランザクションを作成できます。たとえば、既存の Fragment クラス内からフラグメントを追加するコードを次に示します。
だから私は(例えば)TestFragment
のように見えました:
で、次のMainActivity
ようにフラグメントを初期化します。
次に、フラグメントをViewPager
viaに渡しFragmentPagerAdapter
ます。
最後に、例外が発生します。しかし、私だけを使用する場合:
その後、動作します。
質問
getChildFragmentManager()
フラグメントのどこでメソッドを呼び出す必要がありますか? 私が間違っていることは何ですか?
新しい Android Nested Fragments を使用した良い例があれば、リンクを共有してください。どうぞよろしくお願いいたします。
android - FragmentPagerAdapter の 1 つのタブで FragmentTransaction をコミットする
FragmentPageAdapter
アプリ内に複数のタブを使用しています。これらのタブの 1つは、 を使用しListFragment
て別のフラグメントに置き換えられることになっているです。onItemClick
FragmentTransaction
を内に追加するListFragment
と、変更置換は完全に機能しますが、 を使用してこれを行う方法がわかりません。FrameLayout
Activity
FragmentPagerAdapter
より良い説明は次のとおりです。
フラグメントリストビューから1つのアイテムをクリックした後、次のように置き換える必要があります
を使ってみ.replace(((ViewGroup)getView().getParent()).getId(), newFragment).commit()
ましたが、うまくいきません。
android - SupportMapFragment を含む SherlockFragment が 2 回目に開かない
私のアプリには、1 つの SherlockFragmentActivity があり、これには 6 つのフラグメントがあります。これらのフラグメントの 1 つに map-fragment が含まれています。
問題 : アプリを起動するとマップが正常にロードされますが、別のフラグメントに移動してから再度マップ フラグメントをロードしようとすると、ロードされずにエラーが発生します。
ビューも削除しようとしましたが、機能していません
ここに私のコードがあります、
これが私のLogCatです。
android - ViewPager、getChildFragmentManager() & getFragmentManager()
各タブにTabHost
&を含む Android アプリを開発しています。FragmentActivity
私の最初のタブでは、ViewPager
インジケーターとボタンでフラグメントを初期化し、このボタンは別のViewPager
インジケーターでダイアログを開きますが、私の問題はViewPager
、フラグメントのルート アクティビティが のダイアログと衝突していることViewPager
です。
私が呼び出しているルートアクティビティでgetChildFragmentManager()
...そしてOKですが、ダイアログViewPager
でもう一度呼び出していますが、機能しgetChildFragmentManager
ていません...
私は何を間違っていますか?