Моя идея состоит в том, что функция onCreate каждого фрагмента должна вызываться после пролистывания, так что перед созданием следующей страницы.
Из "swipe" я предполагаю, что вы размещаете фрагменты в ViewPager
. Он имеет лимит закадровых страниц , который контролирует, сколько фрагментов предварительно создано на каждой стороне текущей страницы. По умолчанию это 1, поэтому на странице 0 также создается фрагмент страницы 1.
Если вы действительно хотите, чтобы фрагмент onCreate()
s запускался именно тогда, когда фрагмент становится видимым, установите для предела страницы за пределами экрана значение 0. Установка предела для страницы на 0 не работает, так как минимум по умолчанию равен 1 .
Если вам просто интересно определить, когда фрагмент становится видимым, вы можете подключить до setUserVisibleHint()
.