6

on the page: onCreate called for two tabs each time one tab is selected

there is explained how the ABS(actually ViewPager) is working in order for ViewPager to be able to do a scrolling. It is clear that at least a prev/next page need all to be created at the same time.

Would it be possible to "cache" more than just prev/next Views(Fragments), in a way:

  1. I am on Page 1 and there I have a network call to fetch some data(doing this in Activity, not in Fragment - btw. is this OK?)

  2. switch to Page 2, and then

  3. switch to Page 3, and then

  4. switch to Page 1 = Here my page is recreated (using some caching though, BUT, I do not need any recreation if possible)

So, it would be nice to cache all the pages. How to accomplish this If possible in current version (4), or this would be some new feature?

Or even better question, how to postpond/disable destroying of views?

Community
  • 1
  • 1
miroslavign
  • 2,033
  • 2
  • 24
  • 26

1 Answers1

23

I suppose It might be useful to someone else, as pointed on website http://storkme.org/2011/12/tabs-done-right-viewpager-and-fragments/

There is already a method which allows you to predefine number of "cached" pages the ViewPager will save from recreating.

mViewPager.setOffscreenPageLimit(3);

Thanks Jake for reminding me to do a different G search :)

Jason Sturges
  • 15,855
  • 14
  • 59
  • 80
miroslavign
  • 2,033
  • 2
  • 24
  • 26
  • The site appears to be down now – G_V Dec 02 '14 at 13:49
  • The website is down now, but it was there only to show where I got this hint from. The answer should be usable, as it points to this setOffscreenPageLimit method. – miroslavign Dec 03 '14 at 08:35