OK、ブロードキャストレシーバーが呼び出され、onReceive()
メソッドで静的データを使用してギャラリーを新しいアダプターで更新します。これらはすべてUIスレッドで実行されます。
ただし、何も変わりません。古いデータはギャラリーに残りますが、コードをデバッグして時間をかけると、invalidateが呼び出された後に更新されます。ああ、ところで、ビューはViewFlipperにありますが、新しいアダプターを作成する前に適切なビューに変更します。競合状態がありますが、これは正常ですか?そうでない場合は、どうすればよいですか?
以下は、で私が話していることのサンプルですonRecieve()
。
onRecieve() {
mFlipper.setDisplayedChild(0);
mNavAdapter.addCategory(-1);
mGalNav.setSelection(0);
getCategoryProducts(-1);
}
void getCategoryProducts(int category) {
mGalProducts.setAdapter(new DealCheckInAdapter(this,
getCheckInProducts()));
mGalProducts.invalidate();
}