回答編集履歴
1
微修正
test
CHANGED
@@ -1,8 +1,8 @@
|
|
1
|
-
GridViewなどのAdapterをセットする形式のViewは画面内に表示できるだけの子Viewを持つようになっているため、子Viewを直接取得して
|
1
|
+
GridViewなどのAdapterをセットする形式のViewは画面内に表示できるだけの子Viewを持つようになっているため、子Viewを直接取得して表示を書き換えるのではなく、Adapterにデータの更新を伝えることで子Viewの更新を促すようにすべきです。
|
2
2
|
|
3
3
|
|
4
4
|
|
5
|
-
ご質問のコードのCalendarAdapter内にある `positionView` のように、子Viewにアクセスするためのキャッシュを持っておくのはアンチパターンなので削除しましょう。その代わりに、tx_shiftに関連するデータをAdapterに持たせ、 `getView()` 内でViewの設定をすべて行うようにします。Activity側では、Adapter内のデータを変更して、変更を通知するために `notifyDataSetChanged()` を呼べばOKです。
|
5
|
+
ご質問のコードのCalendarAdapter内にある `positionView` のように、子Viewにアクセスするためのキャッシュを持っておくのはアンチパターンなので削除しましょう。その代わりに、tx_shiftに関連するデータをAdapterに持たせ、 `getView()` 内で子Viewの設定をすべて行うようにします。Activity側では、Adapter内のデータを変更して、変更を通知するために `notifyDataSetChanged()` を呼べばOKです。
|
6
6
|
|
7
7
|
|
8
8
|
|