When you insert/remove/reorder (or do any other manipulation) ListView items according to the default behaviour of ListView.builder and ListView.separated it always rebuilds the whole widget.
How can I avoid this? It brings undesired results such as loss of data.
Instead of using
ListView.builderorListView.separatedyou can useListView.customby settingfindChildIndexCallbackproperty