У меня есть FragmentStatePagerAdapter
, который содержит, скажем, три Fragment
s. Fragments
: A (позиция 0), B и C (позиция 2). Fragment B
в настоящее время видно.Make ViewPager забыть текущую позицию позиции при изменении данных
При взаимодействии с пользователем, я позвоню notifyDataSetChanged()
, и теперь есть пять Fragments
. Это D (позиция 0), E, F, G и H (позиция 4).
Текущее поведение: Fragment E
отображается по умолчанию после изменения данных. (ViewPager
остается на прежнем месте.) Однако я бы хотел, чтобы ViewPager
показывал пункт position-0
каждый раз, когда FragmentStatePagerAdapter
получает новые данные.
Я пробовал setCurrentItem(0)
на ViewPager
. Но Fragment E
все еще отображается до ViewPager
прокрутки до Fragment D
.
Любое решение?
Однако, если я просто хочу, чтобы «ViewPager» сразу показывал нулевую страницу без прокрутки? Я думал, что увидел что-то вроде 'setPrimaryItem()' – Jonas
извините, это была моя ошибка в setPrimaryitem(). Вы должны использовать 'setCurrentItem (0, false)' not 'setCurrentItem (0)' 'public void setCurrentItem (int item, boolean smoothScroll)', false означает, что нет smoothScroll –
Но есть еще какой-то прокрутка? Могу ли я сразу показать нулевой элемент? – Jonas