他のフラグメントは下部ナビゲーション フラグメント内に存在し、サーバーからのデータが含まれています。以前よりも速くロードされるため、データは存在しているように見えますが、ビューが破壊され、再度ロードされるため、プロセスが遅れます。
使用している正確なナビゲーション フラグメントのドキュメント ページにリンクするか、質問にコードを含めて、他の人が質問に適切に回答できるようにすることをお勧めします。
– ラムデシュ
2020 年 9 月 3 日 13:46
------------------------
フラグメントをロードするときは、ネットワーク リクエストを再度行う前に、データがすでに存在するかどうかを確認する必要があります。
「onCreateView」でネットワークを呼び出したとします。方法。クラスにグローバル変数があります。
class YourClass{
var someVariable = 0
...
//here your call network on "onCreateView" method
someVariable = callingNetWork.getValueFromNetWork()
}
onCreateView はフラグメントのライフサイクルから呼び出されます。呼び出される回数を制御することはできません。したがって、すでにデータがあるかどうかを確認する必要があります。次のようなロジックが必要です。
if( someVariable == 0) { //Has not been modiefied yet
someVariable = callingNetWork.getValueFromNetWork()
}
//Don't need an else, if it's not equal to 0, you have already called the networkd and stored the value
1
ありがとう、うまくいきました!ちょっとした誤解の問題です!
– 旅行の時間
2020 年 9 月 3 日 14:27