Когда использовать hasStableIds true для recyclerView? - PullRequest
1 голос
/ 03 июня 2019

В настоящее время я играю с hasStableIds вида переработчика, и у меня есть следующие наблюдения:

1) Когда hasStableIds = false:

  • Однажды notifyDataSetChanged()вызванный, он сделает все представления грязными и снова их переработает, из-за чего onCreateViewHolder() и onBindViewHolder() будут вызываться для каждого элемента.

2) Когда hasStableIds = true:

  • После вызова notifyDataSetChanged() он проверит идентификаторы, а затем решит, создавать ли viewHolder для элемента recyclerView.Если набор данных не изменяется, то он будет вызывать только onBindViewHolder(), а не onCreateViewHolder() снова.

Так что в соответствии с вышеизложенным поведением, я не понимаю, следует ли нам всегда использовать наше представление о переработчике сhasStableIds = true чтобы избежать повторного создания виджетов?или есть какие-то особые условия, в которых мы должны его использовать?

Добро пожаловать на сайт PullRequest, где вы можете задавать вопросы и получать ответы от других членов сообщества.
...