問題タブ [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.

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

android - NoSuchMethodError getChildFragmentManager()

ViewPager 自体がフラグメント内にある FragmentPagerAdapter を使用して ViewPager を実装しようとしています。最新のサポート ライブラリとネストされたフラグメントを使用することで可能になるはずであるというドキュメントを読みました。主に、PagerAdapter がルート フラグメントの子フラグメント マネージャーを使用するようにしたいと考えています。

そのため、私のプロジェクトでは ActionBarSherlock と SherlockFragments を使用しています。ActionBarSherlock に同梱されているサポート ライブラリには getChildFragmentManager() メソッドがまったく含まれていなかったので、最新のサポート ライブラリ v4 をダウンロードして、ActionBarSherlock と私のプロジェクトの libs フォルダーにも配置しました。この変更により、プロジェクトは正常にコンパイルされますが、最初の実行では getChildFragmentManager() に関する NoSuchMethodError で終了します。ここで何が間違っていますか?

(PS は、ターゲットとする最小プラットフォームである Android 2.2 でテストしています。)

ありがとう!

解決済み: プロジェクトとすべての参照ライブラリのサポート ライブラリを最新バージョンに置き換えました。次に、プロジェクトをクリーンアップしましたが、参照されているライブラリもクリーンアップして再構築するのを忘れていました...これにより、この奇妙な動作が発生しました。

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

android - Android フラグメント アニメーション onResume

状況は次のとおりです。

API 17 で導入された子フラグメントを使用しています。

だから私はオンActivityA->FragmentA->ChildFragmentAで、アニメーションを使用してバックスタックに追加し、バックスタックをポップする FragmentTransaction に移行しActivityA->FragmentA->ChildFragmentBます (ChildFragmentB に移動するときのアニメーションと、押し戻して ChildFragmentA に移動するときのアニメーションがあります)。

次に移動しますActivityA->FragmentB(FragmentA はもはや接続されていません)。が表示されているActivityA->FragmentA場所に戻ると、から来たときと同じようにアニメーション化されます。 ChildFragmentBChildFragmentBChildFragmentA

再開時にこのアニメーションを無効にしたいActivity->FragmentA。ただし、子フラグメント間を移行するときはそのままにしてください。このアニメーションは FragmentTransaction で設定されます。これを実現する方法はありますか?

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

android - ダイアログでの Android Maps API v2

ダイアログに GMaps を表示しようとしていますが、できますか?

私はレイアウトを持っています

以下のように、この XML をダイアログに膨らませます...

しかし、インフレ中にランタイムエラーが発生します...

誰でもこれで私を助けてもらえますか??

0 投票する
4 に答える
36188 参照

android - null を返す getParentFragment

私は を持ってFragmentFrameLayoutます。この最初のフラグメント (A) は、その Framelayout 内に別のフラグメント (B) をロードします。getParentFragment内部フラグメント (B) から呼び出すと、 が得られnullます。この方法はどのように適切に使用する必要がありますか?

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

android - フラグメント インスタンスを取得する Google マップ v2

タブにあるマップを作成しようとしています。android版2.2からGoogleマップに対応するようサポートライブラリを追加しました。主な問題は、タブがフラグメントであり、ネストされたフラグメントがサポートされていないことです。2 つの xml ファイルを作成しました
。1) 相対レイアウトがあり、タブで onCreateView() メソッドが呼び出されると膨張し
ます。 SupportMapFragment

2 番目の xml ファイルは拡張され、最初の xml ファイルに追加されます。 相対レイアウト。マップは表示されますが、フラグメントのインスタンスを取得できません。ビューでフラグメントからインスタンスを取得する方法はありますか?

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

android - android.view.InflateException:クラスフラグメントの膨張中にエラーが発生しました

次のエラーが発生しました:

タブ間を水平方向にスワイプするアクションバーシャーロックを備えたAndroidアプリを作成しています。タブごとにフラグメントをロードしましたが、これらの1つに問題があります。このフラグメントには、ネストされたフラグメントがあります。これは、プルして更新するリストに不可欠です。したがって、私は次のレイアウトを持っています:

そして、次のコードスニペット:

この問題は、タブ間をスワイプしているとき、およびフラグメントが再描画されているときに発生します。

お知らせするために、私はサポートライブラリv4を使用しています。

0 投票する
16 に答える
24844 参照

android - 遷移アニメーション中にネストされたフラグメントが消える

シナリオは次のとおりです。アクティビティには fragment が含まれており、フラグメントを追加するために使用Aされます。getChildFragmentManager()A1A2onCreate

これまでのところ、すべてが期待どおりに動作しています。

次に、Activity で次のトランザクションを実行します。

移行中、enterフラグメントのアニメーションBは正しく実行されますが、フラグメント A1 と A2 は完全に消えますpopEnter[戻る] ボタンでトランザクションを元に戻すと、トランザクションは適切に初期化され、アニメーション中に正常に表示されます。

私の簡単なテストでは、もっと奇妙になりました - 子フラグメントのアニメーションを設定すると (以下を参照)、exitフラグメントを追加するとアニメーションが断続的に実行されます。B

私が達成したい効果は単純です -フラグメント( exitanim2 ) のアニメーションを実行して、ネストされた子を含むコンテナー全体をアニメーション化します。popExitA

それを達成する方法はありますか?

編集:ここでテストケースを見つけてください

Edit2 : @StevenBile に感謝します。静的アニメーションを試し続けるように促してくれました。どうやら、操作ごとにアニメーションを設定できるようです (トランザクション全体にグローバルではありません)。つまり、子は無期限の静的アニメーション セットを持つことができますが、親は別のアニメーションを持つことができ、すべてを 1 つのトランザクションでコミットできます。 . 以下の説明と更新されたテスト ケース プロジェクトを参照してください。

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

android - executePendingTransactions エラーへのフラグメント再帰エントリ

次のようなエラーがあります。

MyActivity.m_oPager.setCurrentItem(iCurrentView);以下のこのアダプターに関連するアクティビティで行う行で:

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

android - 子フラグメントは正当な理由もなく破棄されます

情報:の中に2ペインのレイアウト(2つの子Fragments)があります。ParentFragmentもちろん、これはの中にありFragmentActivityます。私はに持っsetRetainInstance(true)ていParentFragmentます。向きを変更しても、左側の子フラグメント破棄されonCreate()ません(呼び出されません)。これは正常です(親がインスタンスを保持しているため)。

問題:向きを変えると、右側のフラグメント破壊されます(onCreate()呼び出されます)。なぜ地獄は右の断片が破壊され、左の断片は破壊されないのですか?

編集:を削除するsetRetainInstance(true)と、左側のフラグメントが2回onCreate()呼び出され(lol wtf)、右側のフラグメントが1回呼び出されます。だからこれも良くない...onCreate()

ParentFragmentの以下のコード:

LEソリューション:antonytに 感謝します、答えは以下のとおりです。実行するために必要な唯一の変更は、親のonCreateView()内にありますFragment

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

android - ViewPager でタブを使用すると、「Java.lang.IllegalStateException アクティビティが破棄されました」というエラーが発生する

タブ モードで ActionBarSherlock を使用するアプリケーションがあります。5 つのタブがあり、各タブのコンテンツはフラグメントを使用して処理されます。ただし、tab2 の場合、いくつかのフラグメント ページを持つ ViewPager 要素を保持する xml ファイルのフラグメントがあります。アプリケーションを最初に起動すると、問題なくタブを切り替えることができますが、tab2 を 2 回目に押すと、上記のエラーが発生します。主な活動は以下の通りです。

ViewPager を使用しないフラグメント クラスは次のとおりです。

ViewPager を使用したフラグメント クラスは次のとおりです。

私が別の場所で読んだことから (間違っている場合は修正してください)、これは、2 番目のパスのフラグメント マネージャーが、存在しないアクティビティのフラグメントを再利用しようとするために発生し、エラーが発生します。しかし、フラグメント アクティビティを使用していないため、ここでこれが発生する理由はわかりません。logcat によると、エラーは Tab2 クラス、mViewPager.setAdapter(mMyFragmentPagerAdapter) という行の onViewCreated メソッドにあります。どんな助けでも大歓迎です...ありがとう。