@Override public YViewPager.SavedState createFromParcel(Parcel in, ClassLoader loader) { return new YViewPager.SavedState(in, loader); }
@Override public void onRestoreInstanceState(Parcelable state) { if (!(state instanceof YViewPager.SavedState)) { super.onRestoreInstanceState(state); return; } YViewPager.SavedState ss = (YViewPager.SavedState) state; super.onRestoreInstanceState(ss.getSuperState()); if (mAdapter != null) { mAdapter.restoreState(ss.adapterState, ss.loader); if (isVertical) { setCurrentItemInternalVertical(ss.position, false, true); } else { setCurrentItemInternalHorizontal(ss.position, false, true); } } else { mRestoredCurItem = ss.position; mRestoredAdapterState = ss.adapterState; mRestoredClassLoader = ss.loader; } }
@Override public Parcelable onSaveInstanceState() { Parcelable superState = super.onSaveInstanceState(); YViewPager.SavedState ss = new YViewPager.SavedState(superState); ss.position = mCurItem; if (mAdapter != null) { ss.adapterState = mAdapter.saveState(); } return ss; }