Существуют ли какие-либо методы, которые вызываются, когда неэкранные элементы в RecyclerView снова видны на экране при прокрутке пользователя? - PullRequest
0 голосов
/ 27 апреля 2020

Моя проблема: мне нужно иметь возможность получить ссылку на спецификацию RecyclerView c item * ViewHolder. В настоящее время я могу добиться этого, когда нужный мне элемент отображается на экране.

Если элемент находится за пределами экрана (не отображается), я не могу ссылаться на ViewHolder этого элемента через RecyclerView.findViewHolderForAdapterPosition(). Он возвращает ноль, потому что когда пользователь прокручивает элемент (который мне нужен), он выходит за пределы экрана и перерабатывается. Это моя проблема.

Вот почему мне интересно, существует ли метод , который будет вызываться, когда элемент RecyclerView снова становится видимым на экране при прокрутке пользователя. Должен быть какой-то способ, который будет удерживать или обновлять ViewHolder s по мере их повторного использования. Я обнаружил, что смогу получить ссылку на ViewHolder, который мне нужен, сохранив их в массиве, но это опять-таки сама идея RecyclerView, не так ли?

Я догадался, что это onBindViewHolder метод адаптера. Я разместил там несколько записей журнала и попытался прокрутить. Это не помогло. Я думаю, что этот метод будет вызван только один раз.

Если таких методов не существует, есть ли другие обходные пути, чтобы получить ссылку на ViewHolder в указанной позиции c?

Я застрял в этой проблеме. Любые предложения будут с благодарностью.

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