0

次のシナリオがあります。

  • アクティビティには 2 つのフラグメントがあります。
  • 各フラグメントにはカスタム ビュー (同じだが異なるインスタンス) があります。
  • 1 つのフラグメント アルゴは DialogFragment を呼び出してビューのサイズが全画面表示になるのをエミュレートするため、同じカスタム ビューがもう 1 つあります。

カスタム ビューのいずれかをクリックすると、ネットワーク リクエストが作成され、応答が完了するまで (スピナーを使用して) 待機します。私の問題は、ビューの状態を「共有」したいということです。そのため、カスタム ビューのいずれかをクリックすると、3 つのビューにスピナーが表示され、すべてのビューが応答を待機し、応答が到着したときにそれらのすべてが各スピナーを削除し、カスタム ビューに再びアクセスできるようにします。

4

1 に答える 1

0

すべてのカスタム ビュー インスタンスの静的リスト (このリストが原因でメモリ リークが発生しないようにするためのより良い週の参照) を、静的状態変数を使用してカスタム ビュー クラスで維持できます。カスタムビュークラスのコンストラクターからリストに項目を追加できます。状態が変更されるたびに、リストにあるすべてのビューで必要なことを行います。週参照を使用する場合は、 nullチェックを忘れないでください。

于 2017-07-27T13:57:54.883 に答える