@SuppressWarnings("deprecation") @Deprecated private void findAllFragmentsWithViewsPreO( @NonNull android.app.FragmentManager fragmentManager, @NonNull ArrayMap<View, android.app.Fragment> result) { int index = 0; while (true) { tempBundle.putInt(FRAGMENT_INDEX_KEY, index++); android.app.Fragment fragment = null; try { fragment = fragmentManager.getFragment(tempBundle, FRAGMENT_INDEX_KEY); } catch (Exception e) { // This generates log spam from FragmentManager anyway. } if (fragment == null) { break; } if (fragment.getView() != null) { result.put(fragment.getView(), fragment); if (VERSION.SDK_INT >= VERSION_CODES.JELLY_BEAN_MR1) { findAllFragmentsWithViews(fragment.getChildFragmentManager(), result); } } } }
@Override public void restoreState(Parcelable state, ClassLoader loader) { if (state != null) { Bundle bundle = (Bundle) state; bundle.setClassLoader(loader); Parcelable[] fss = bundle.getParcelableArray("states"); mSavedState.clear(); mFragments.clear(); if (fss != null) { for (int i = 0; i < fss.length; i++) { mSavedState.add((Fragment.SavedState) fss[i]); } } Iterable<String> keys = bundle.keySet(); for (String key : keys) { if (key.startsWith("f")) { int index = Integer.parseInt(key.substring(1)); Fragment f = mFragmentManager.getFragment(bundle, key); if (f != null) { while (mFragments.size() <= index) { mFragments.add(null); } f.setMenuVisibility(false); mFragments.set(index, f); } } } } } }
if (key.startsWith("f")) { int index = Integer.parseInt(key.substring(1)); final Fragment fragment = mFragmentManager.getFragment(bundle, key); if (fragment != null) { while (mFragments.size() <= index) {
if (key.startsWith("f")) { int index = Integer.parseInt(key.substring(1)); Fragment f = mFragmentManager.getFragment(bundle, key); if (f != null) { while (mFragments.size() <= index) {
if (key.startsWith("f")) { int index = Integer.parseInt(key.substring(1)); final Fragment fragment = mFragmentManager.getFragment(bundle, key); if (fragment != null) { while (mFragments.size() <= index) {
private void findAllFragmentsWithViewsPreO( android.app.FragmentManager fragmentManager, ArrayMap<View, android.app.Fragment> result) { int index = 0; while (true) { tempBundle.putInt(FRAGMENT_INDEX_KEY, index++); android.app.Fragment fragment = null; try { fragment = fragmentManager.getFragment(tempBundle, FRAGMENT_INDEX_KEY); } catch (Exception e) { // This generates log spam from FragmentManager anyway. } if (fragment == null) { break; } if (fragment.getView() != null) { result.put(fragment.getView(), fragment); if (VERSION.SDK_INT >= VERSION_CODES.JELLY_BEAN_MR1) { findAllFragmentsWithViews(fragment.getChildFragmentManager(), result); } } } }
Fragment fragment = getFragmentManager().getFragment(savedInstanceState, KEY_FRAGMENT); String name = savedInstanceState.getString(KEY_LIST_NAME); setFragment(fragment, name);