I am trying to save view pager state, in order to avoid creating fragments once again on orientation change. Any suggestions is highly appreciated.
I tried below stuff, but not sure how it will work...
int pagerId = 0;
mPager = (ViewPager) findViewById(R.id.pager);
DialerPagerAdapter viewpageradapter = new DialerPagerAdapter(fm);
if (savedInstanceState != null) {
if (savedInstanceState.getInt("tab") != -1) {
mPager.setCurrentItem(savedInstanceState.getInt("tab"));
pagerId=savedInstanceState.getInt("pagerState");
}
}
mPager.setOnPageChangeListener(ViewPagerListener);
if (pagerId != -1 ){
mPager.setId(pagerId);
}else{
pagerId=mPager.getId();
}
mPager.setAdapter(viewpageradapter);
in saveInstanceState I am doing below stuff
outState.putInt("pagerState" , mPager.getId() );
Thanks Venkatraman
Do this way
Example saving string in shared preferences and retrieve it again anywhere in your app.
Usage:
Use this to save the string on pause, and recreate it in onCreate, or where ever you need the information
The same method can easily be used for other simple types.
For your use case:
In your code:
And in onPause()