У меня есть viewpager в моем приложении с 4 вкладками. Я знаю, что могу сделать setOffscreenPageLimit(3)
, чтобы сохранить все страницы из перезагрузок. но теперь моя проблема заключается в том, что все 4 вкладки должны отправлять запрос на сервер, и это занимает некоторое время, особенно когда все 4 запроса отправляются одновременно. Есть ли способ, который я могу сделать, например, setOffscreenPageLimit(0)
, который заставляет приложение загружать только текущую страницу, но сохранить страницу, когда происходит салфетка?android-кешировать каждый фрагмент в viewpager, но не загружается, пока фрагмент не будет виден пользователю?
ответ
Есть ли способ, что я могу сделать, как setOffscreenPageLimit (0), что делает приложение загружает только текущую страницу, но сохранить страницу, когда коромысло произойдет? не
Нет, вы не можете, чтобы иметь лучший UX андроида доза не позволяют установить его в 0, так что значение по умолчанию, и самый нижний из них 1, что означает, что загружает ваши прочь фрагменты экрана левого и правого вашего текущего фрагмента.
Что вы должны сделать?
3 различные решения я могу вам предложить:
1) Отправить запрос на сервер в функции onPageSelected(int position)
2), если вы используете actionBar
вкладка использовать onTabSelected
и отправить запрос на сервер.
3) отправьте свой запрос на onResume
вашего фрагмента, используя setUserVisibleHint
и getUserVisibleHint
функцию, чтобы определить, когда ваш фрагмент действительно виден вашему пользователю, поэтому отправьте его в нужное время.
- 1. Фрагмент не виден в ViewPager
- 2. Фрагмент не смог заменить фрагмент в viewpager
- 3. как знать, какой фрагмент виден в ViewPager
- 4. viewPager не отображает фрагмент
- 5. Android: OnViewCreated вызываемый, но фрагмент не виден
- 6. ViewPager не показывает Фрагмент
- 7. Фрагмент не загружается
- 8. Добавить фрагмент в фрагмент viewPager
- 9. Не показывать фрагмент на ViewPager
- 10. Android фрагмент не загружается
- 11. android: фрагмент не загружается фрагмент AsyncTask ArrayAdapter
- 12. Фрагмент ViewPager не отображается ProgressDialog
- 13. Фрагмент видимый каждый второй вид в Viewpager
- 14. ViewPager CurrentItem Фрагмент не обновляется
- 15. Фрагмент ViewPager не обновляется синхронно?
- 16. Показать подсказку, когда фрагмент внутри viewpager отображается пользователю
- 17. фрагмент viewpager ничего не показывает
- 18. Определите, какой фрагмент в настоящее время виден в ViewPager
- 19. сохранить каждый фрагмент, выбранный внутренним ViewPager?
- 20. Фрагмент не загружается с SideMenu
- 21. ViewPager фрагмент нагрузки, даже если родительский фрагмент не является активным
- 22. Фрагмент Android заменен, но фрагмент не исчезнет
- 23. WebView Размещено в Фрагмент не загружается
- 24. Google Maps Фрагмент не загружается
- 25. фрагмент setUserVisibleHint не вызывается в ViewPager внутри anotherViewPager
- 26. Обновить фрагмент в ViewPager
- 27. Android viewpager in фрагмент
- 28. Заменить фрагмент в ViewPager
- 29. Фрагмент - ViewPager Common Layout
- 30. Добавить Viewpager во фрагмент
спасибо за советы! Я попробовал ваше третье решение. но вместо отправки запроса в 'onResume', я сделал это в' setUserVisiblieHint'. Я проверяю, не был ли ранее отправлен запрос и 'isVisibleToUser == true', а затем отправить запрос. работает как ожидалось! – user1865027