私はビューページャーの非常に奇妙な動作を発見しました。 FragmentPagerAdapterを使用しているとき、getItem()が正しい位置、つまり位置0、位置1、位置2で呼び出されたことを確認しました.......... しかし、onCreateView()は逆の順序、つまり位置2、位置1、位置0 (ビューページが3つのオフスクリーンページを維持していると仮定して) ViewPagerはどういうわけかこれらのフラグメントのスタックを維持していると思います。ビューを作成する必要があるときは、スタックから最もアクティブなフラグメントをポップし、onCreateView()という名前にします。View Pagerを使用しているときにフラグメントのonCreateView()メソッド呼び出しの順序は何ですか?
私の質問は、onCreateView()の呼び出しの順序を制御できますか? そうでなければ、onCreateView()が呼び出されたときに作成したネットワーク要求を順序付けることができます。そのため、最初にフラグメント0のネットワーク要求を実行し、次にフラグメント1、次にフラグメント2を実行します。 onCreateView()が今まで呼び出されていない場合、UI要素が初期化されていない可能性があります。 したがって、これらのネットワークコールを正しい順序、つまり1、2、...の順番にするにはどうすればよいでしょうか。
私はonCreateView()の呼び出しを制御することはできません.....しかし、自分のビューページャーを再実装したり、既存のビューページをオーバーライドできるようにする必要があります。フラグメントページを保持するためのスタック、それはキューを使用する必要があります。私はそれらのフラグメントをFIFO順にインスタンス化することができました。 – charlie