Адаптер Viewpager загружает позиции 0 и 1 одновременно в instantiateItem - PullRequest
0 голосов
/ 04 октября 2019

У меня есть Arraylist элементов, которые я передаю в адаптер ViewPager. У меня возникают проблемы при обработке данных, поскольку на адаптере

public Object instantiateItem(@NonNull ViewGroup container, int position) позиции 0 и 1 загружаются одновременно до того, как ViewPager переключается на вторую страницу.

Это типично или я пропускаючто-то ?.

Arraylist загружается при вызове адаптера, т. Е.,

mPhotoAdapter = new PhotoAdapter(mPhotos, this, this);

1 Ответ

5 голосов
/ 04 октября 2019

Да, это типично. ViewPager загружает другую страницу, даже если вы не переместились на другую страницу. Согласно документации ViewPager требуется минимум 1 закадровый лист. Это означает, что будет загружена как минимум одна дополнительная страница. Вы можете изменить ограничение страницы за пределами экрана, вызвав этот метод в ViewPager instance:

setOffscreenPageLimit (int limit)
...