@Override protected void dispatchSaveInstanceState(@NonNull SparseArray<Parcelable> container) { super.dispatchSaveInstanceState(container); mNormalView.saveHierarchyState(container); mAdvanceView.saveHierarchyState(container); mImageView.saveHierarchyState(container); mActionView.saveHierarchyState(container); }
public final void destroyDrawerView() { if (drawerView != null) { drawerViewState = new SparseArray<>(); drawerView.saveHierarchyState(drawerViewState); } onDestroyDrawerView(); drawerView = null; }
@Override public void onSaveInstanceState(@NonNull Bundle outState) { super.onSaveInstanceState(outState); if (drawerView != null) { drawerViewState = new SparseArray<>(); drawerView.saveHierarchyState(drawerViewState); outState.putSparseParcelableArray(KEY_DRAWER_VIEW_STATE, drawerViewState); } } }
public void save(View view) { int originalId = view.getId(); setIdIfNoneExists(view); view.saveHierarchyState(this); view.setId(originalId); }
private void saveViewState(@NonNull View view) { hasSavedViewState = true; viewState = new Bundle(getClass().getClassLoader()); SparseArray<Parcelable> hierarchyState = new SparseArray<>(); view.saveHierarchyState(hierarchyState); viewState.putSparseParcelableArray(KEY_VIEW_STATE_HIERARCHY, hierarchyState); Bundle stateBundle = new Bundle(getClass().getClassLoader()); onSaveViewState(view, stateBundle); viewState.putBundle(KEY_VIEW_STATE_BUNDLE, stateBundle); List<LifecycleListener> listeners = new ArrayList<>(lifecycleListeners); for (LifecycleListener lifecycleListener : listeners) { lifecycleListener.onSaveViewState(this, viewState); } }
public void saveActionViewStates(Bundle outStates) { SparseArray<Parcelable> viewStates = null; final int itemCount = size(); for (int i = 0; i < itemCount; i++) { final android.view.MenuItem item = getItem(i); final View v = MenuItemCompat.getActionView(item); if (v != null && v.getId() != View.NO_ID) { if (viewStates == null) { viewStates = new SparseArray<Parcelable>(); } v.saveHierarchyState(viewStates); if (MenuItemCompat.isActionViewExpanded(item)) { outStates.putInt(EXPANDED_ACTION_VIEW_ID, item.getItemId()); } } } if (viewStates != null) { outStates.putSparseParcelableArray(getActionViewStatesKey(), viewStates); } }
public void saveViewState(View view) { SparseArray<Parcelable> viewState = new SparseArray<Parcelable>(); view.saveHierarchyState(viewState); this.viewState = viewState; }
public void saveViewState(View view) { SparseArray<Parcelable> viewState = new SparseArray<Parcelable>(); view.saveHierarchyState(viewState); this.viewState = viewState; }
/** * The method, which is invoked by a {@link TabSwitcher} to save the current state of a tab. It * initializes the view holder pattern, which is provided by the decorator and then delegates * the method call to the decorator's custom implementation of the method * <code>onSaveInstanceState(...):void</code>. * * @param view * The view, which is used to visualize the tab, as an instance of the class {@link * View} * @param tab * The tab, whose state should be saved, as an instance of the class {@link Tab}. The * tab may not be null * @param index * The index of the tab, whose state should be saved, as an {@link Integer} value * @return The bundle, which has been used to save the state, as an instance of the class {@link * Bundle}. The bundle may not be null */ @NonNull public final Bundle saveInstanceState(@NonNull final View view, @NonNull final Tab tab, final int index) { setCurrentParentView(view); int viewType = getViewType(tab, index); Bundle outState = new Bundle(); SparseArray<Parcelable> viewStates = new SparseArray<>(); view.saveHierarchyState(viewStates); outState.putSparseParcelableArray(VIEW_HIERARCHY_STATE_EXTRA, viewStates); onSaveInstanceState(view, tab, index, viewType, outState); return outState; }
public void saveViewState(View view) { SparseArray<Parcelable> viewState = new SparseArray<Parcelable>(); view.saveHierarchyState(viewState); this.viewState = viewState; }
private void putInDetached(int position, View view) { SparseArray<Parcelable> viewState = new SparseArray<>(); view.saveHierarchyState(viewState); detached.put(position, viewState); }
void saveFragmentViewState(Fragment f) { if (f.mInnerView == null) { return; } if (mStateArray == null) { mStateArray = new SparseArray<Parcelable>(); } else { mStateArray.clear(); } f.mInnerView.saveHierarchyState(mStateArray); if (mStateArray.size() > 0) { f.mSavedViewState = mStateArray; mStateArray = null; } }
void saveFragmentViewState(Fragment f) { if (f.mInnerView == null) { return; } if (mStateArray == null) { mStateArray = new SparseArray<Parcelable>(); } else { mStateArray.clear(); } f.mInnerView.saveHierarchyState(mStateArray); if (mStateArray.size() > 0) { f.mSavedViewState = mStateArray; mStateArray = null; } }
@Override protected Parcelable onSaveInstanceState() { Parcelable superState = super.onSaveInstanceState(); SavedState ss = new SavedState(superState); ss.childrenStates = new SparseArray(); for (int i = 0; i < getChildCount(); i++) { getChildAt(i).saveHierarchyState(ss.childrenStates); } return ss; }
@Override public Parcelable onSaveInstanceState() { Parcelable superState = super.onSaveInstanceState(); SavedState ss = new SavedState(superState, mCurrentState); ss.childrenStates = new SparseArray(); for (int i = 0; i < getChildCount(); i++) { getChildAt(i).saveHierarchyState(ss.childrenStates); } return ss; }
@SuppressWarnings("unchecked") @Override protected Parcelable onSaveInstanceState() { Parcelable superState = super.onSaveInstanceState(); SavedState ss = new SavedState(superState); ss.childrenStates = new SparseArray(); for (int i = 0; i < getChildCount(); i++) { getChildAt(i).saveHierarchyState(ss.childrenStates); } return ss; }
@Override public void onStop() { super.onStop(); // Remember last scroll location final SparseArray<Parcelable> container = new SparseArray<Parcelable>(); getView().saveHierarchyState(container); final State state = getDisplayState(this); state.dirState.put(mStateKey, container); }
public Bundle createInstanceState() { Bundle state = new Bundle(); if (mCheckedItem != null) { state.putInt(STATE_CHECKED_ITEM, mCheckedItem.getItemId()); } // Store the states of the action views. SparseArray<ParcelableSparseArray> actionViewStates = new SparseArray<>(); for (int i = 0, size = mItems.size(); i < size; i++) { NavigationMenuItem navigationMenuItem = mItems.get(i); if (navigationMenuItem instanceof NavigationMenuTextItem) { MenuItemImpl item = ((NavigationMenuTextItem) navigationMenuItem).getMenuItem(); View actionView = item != null ? item.getActionView() : null; if (actionView != null) { ParcelableSparseArray container = new ParcelableSparseArray(); actionView.saveHierarchyState(container); actionViewStates.put(item.getItemId(), container); } } } state.putSparseParcelableArray(STATE_ACTION_VIEWS, actionViewStates); return state; }
public void saveActionViewStates(Bundle outStates) { SparseArray<Parcelable> viewStates = null; final int itemCount = size(); for (int i = 0; i < itemCount; i++) { final MenuItem item = getItem(i); final View v = item.getActionView(); if (v != null && v.getId() != View.NO_ID) { if (viewStates == null) { viewStates = new SparseArray<Parcelable>(); } v.saveHierarchyState(viewStates); if (item.isActionViewExpanded()) { outStates.putInt(EXPANDED_ACTION_VIEW_ID, item.getItemId()); } } if (item.hasSubMenu()) { final SubMenuBuilder subMenu = (SubMenuBuilder) item.getSubMenu(); subMenu.saveActionViewStates(outStates); } } if (viewStates != null) { outStates.putSparseParcelableArray(getActionViewStatesKey(), viewStates); } }
public void saveActionViewStates(Bundle outStates) { SparseArray<Parcelable> viewStates = null; final int itemCount = size(); for (int i = 0; i < itemCount; i++) { final MenuItem item = getItem(i); final View v = item.getActionView(); if (v != null && v.getId() != View.NO_ID) { if (viewStates == null) { viewStates = new SparseArray<Parcelable>(); } v.saveHierarchyState(viewStates); if (item.isActionViewExpanded()) { outStates.putInt(EXPANDED_ACTION_VIEW_ID, item.getItemId()); } } if (item.hasSubMenu()) { final SubMenuBuilder subMenu = (SubMenuBuilder) item.getSubMenu(); subMenu.saveActionViewStates(outStates); } } if (viewStates != null) { outStates.putSparseParcelableArray(getActionViewStatesKey(), viewStates); } }