Androidはワンツーパンチ 三歩進んで二歩下がる

プログラミングやどうでもいい話

ListViewのアダプターにデータが変更されたことを通知する

自分用メモです。

更新ボタンが押されるなどしてArrayAdapter継承クラスにリストにセットする
内容が変更されたことを通知して表示を最新にする。

                // 画面セットしなおし
                mAdapter.clear();
                // データセットしなおし
                makeListItems();
                // アダプターに通知する
                mAdapter.notifyDataSetChanged();

2013/02/09追記
@kimukou_26 さんに補足していただきました。どうもありがとうございます。

kimukou_26 2013/02/07 10:40
この例だと リストが長い場合ANRが出やすいので

mAdapterに
− add/insert メソッドをオーバライド

  • 1行mAdapter.addするたびに mAdapter.notifyDataSetChanged();

を呼ぶ形のほうがいいかと思います