私はRecyclerviewを使ってメモ帳アプリを実装しています。Android - なぜ私たちはadapter.notifydatasetChanged()メソッドを使用していますか?
メモを追加、削除、編集するときにUIで表示するように変更されたnewListnoteを返し、adapter.NotifyDataSetChanged()を呼び出します。
public static void UpdateUI(List<Entity_NoteItem> newlistNote) {
/*listNoteToDisplayOnUI = newListNote();
adapter.notifyDataSetChanged();*/
adapter = new DisplayUI_CustomIconLabelAdapter(adapter.context, newlistNote);
myRecyclerView.setAdapter(adapter);
}
しかし、私は私は別のメモリアドレスを持つ別のオブジェクトによってアダプターのデータとして設定されているlistNoteを割り当てた場合、方法NotifyDataSetChanged()は影響を及ぼさないであろうことに気づきました。 したがって、私は新しいリストノートで新しいアダプタを決定し、myRecyclerView.setAdapter(アダプタ)を呼び出し、より効果的になりました。
私の質問は次のとおりです:なぜ私たちはAdapter.NotifyDataSetChanged()メソッドを使用しなければならないのですか?
ありがとうございました!
何度も何度もsetAdapterを行うことは効率的ではありません。アダプター自体はデータを管理する傾向があります。 notifyDataSetChangedはUIを最適に更新します。 – jaibatrik
あなたのお返事ありがとう – Duy