-1

私は、クリックするたびに10個のボタンを含む親フラグメントPを持ち、Pのコンテナを子フラグメントC1〜C10に置き換えます。また、アクションバーの次のをクリックすると、C1からC2にナビゲートすることができます。私はこれを達成することができますが、それぞれの子フラグメントは重い初期化(SVG、surfaceviewなどをロードしています)を持っているので、遷移はスムーズではありません。 C1の次の断片、すなわちC2を開始し、C1の次の部分がクリックされたときに直接再開できるように一時停止状態にすることは可能ですか?手前のフラグメントを開始

これはViewPagerでOffScreenLimitに何らかの方法と同様であるが、私はそれが既存のフラグメントを置き換えるのではなく、ビューページャのソースコードを見ているときだけでViewPagerで既存の枠組みを置き換える新しいフラグメントX.

にビューをスクロール図のようにhereは可能な解決策ですが、既存のコードベースで多くの変更が必要であり、最後にやりたいことです

答えて

0

アクティビティを作成するときにすべてのフラグメントを開始してから呼び出すことができます。

fragmentを体内化する方法をご存知ですか?

ない場合:あなたはボタンでクリックしたときに

Fragment C1 = FragmentC1.newInstance(); 
Fragment C2 = FragmentC2.newInstance(); 
Fragment C3 = FragmentC3.newInstance(); 
... 

それからちょうど情報は開きたいものをWICH送って、uがあなたが1であるときの断片をchengaする方法を知っていますか? コードが必要ですか?

+0

私はそれを初期化する方法を知っています。上記のコードはフラグメントを一時停止状態にしますか?私はフラグメントC2がすべての前処理をSVGを読んでビットマップに変換するのを手前にしたいと思います。そして、C1の次をクリックすると、C2は単純にビットマップを表示しなければなりません。 –

+0

https://developer.android.com/images/fragment_lifecycle.png この画像を確認して、onCreate();を読んでください。とonPause();とonResume(); https://developer.android.com/guide/components/fragments.html –

+0

フラグメントライフサイクルを開始するには、フラグメントマネージャを動的に使用して何らかの方法でアクティビティに追加する必要があることに注意してください。単にフラグメントにFragment.newInstanceライフサイクルを呼び出すことによって開始されない –

関連する問題