2011-06-17 5 views
0

ArrayListを使ってListViewにデータを表示しています。Androidでのリストリストの編集ListView

アクティビティの途中で、アイテムの追加や削除によってArrayListを編集する必要があることがあります。

実際のArrayAdapterのadd/delete関数を、基本となるArrayListと比較すると、違いはありますか?どちらを使うのが良いですか?

答えて

1

アダプタメソッドを使用します。これにより、データが変更されたことがアダプタ(したがってバインドされたリスト)に自動的に通知されます。

+0

ああを呼び出す必要があります。したがって、裏書きarraylistを編集し、 'notifyDataSetChanged()'を呼び出すのと同じですか? – yydl

+0

ソースを調べることによって(http://grepcode.com/file/repository.grepcode.com/java/ext/com.google.android/android/1.6_r2/android/widget/ArrayAdapter.java#ArrayAdapter.add%28java .lang.Object%29)、ほとんどの場合、これが正しいことがわかります。 – kabuko

+0

多くの項目を追加している場合は、本質的に毎回 'notifyDataSetChanged()'が呼び出されることになります。基になるarraylistに追加する方が良いですか? 'notifyDataSetChanged()'を一度呼び出すだけですか? – yydl

0

ArrayListを変更する必要がある(または、他のクラスのフィールドであるか、アダプターについて知らない他のスレッドによって変更されているなど)場合があります。

これらのケースでは、あなたはadapter.notifyDataSetChanged()

関連する問題