當前位置: 首頁>>代碼示例>>Java>>正文


Java Fragment.setInitialSavedState方法代碼示例

本文整理匯總了Java中android.support.v4.app.Fragment.setInitialSavedState方法的典型用法代碼示例。如果您正苦於以下問題:Java Fragment.setInitialSavedState方法的具體用法?Java Fragment.setInitialSavedState怎麽用?Java Fragment.setInitialSavedState使用的例子?那麽, 這裏精選的方法代碼示例或許可以為您提供幫助。您也可以進一步了解該方法所在android.support.v4.app.Fragment的用法示例。


在下文中一共展示了Fragment.setInitialSavedState方法的7個代碼示例,這些例子默認根據受歡迎程度排序。您可以為喜歡或者感覺有用的代碼點讚,您的評價將有助於係統推薦出更棒的Java代碼示例。

示例1: instantiateItem

import android.support.v4.app.Fragment; //導入方法依賴的package包/類
@Override
public Object instantiateItem(ViewGroup container, int position) {
    final Fragment existing = fragments.get(position);
    if (existing != null) {
        return existing;
    }
    if (currentTransaction == null) {
        currentTransaction = fragmentManager.beginTransaction();
    }
    Fragment fragment = getItem(position);
    if (DEBUG) Log.v(TAG, "Adding item #" + position + ": f=" + fragment);
    if (enableSavedStates && savedState.size() > position) {
        Fragment.SavedState fss = savedState.get(position);
        if (fss != null) {
            fragment.setInitialSavedState(fss);
        }
    }
    if (fragment != currentPrimaryItem) {
        setItemVisible(fragment, false);
    }
    fragments.put(position, fragment);
    currentTransaction.add(container.getId(), fragment);
    return fragment;
}
 
開發者ID:Laaidback,項目名稱:A.scribe,代碼行數:25,代碼來源:FragmentStatePagerAdapter2.java

示例2: instantiateItem

import android.support.v4.app.Fragment; //導入方法依賴的package包/類
@Override
@NonNull
public Object instantiateItem(ViewGroup container, int position) {
    long tag = getItemId(position);
    Fragment fragment = mFragments.get(tag);
    // If we already have this item instantiated, there is nothing
    // to do.  This can happen when we are restoring the entire pager
    // from its saved state, where the fragment manager has already
    // taken care of restoring the fragments we previously had instantiated.
    if (fragment != null) {
        return fragment;
    }

    if (mCurTransaction == null) {
        mCurTransaction = mFragmentManager.beginTransaction();
    }

    fragment = getItem(position);
    // restore state
    final Fragment.SavedState savedState = mSavedStates.get(tag);
    if (savedState != null) {
        fragment.setInitialSavedState(savedState);
    }
    fragment.setMenuVisibility(false);
    fragment.setUserVisibleHint(false);
    mFragments.put(tag, fragment);
    mCurTransaction.add(container.getId(), fragment, "f" + tag);

    return fragment;
}
 
開發者ID:weiwenqiang,項目名稱:GitHub,代碼行數:31,代碼來源:UpdatableFragmentPagerAdapter.java

示例3: instantiateItem

import android.support.v4.app.Fragment; //導入方法依賴的package包/類
@SuppressLint("CommitTransaction")
@Override
public Object instantiateItem(ViewGroup container, int position) {
  // If we already have this item instantiated, there is nothing
  // to do.  This can happen when we are restoring the entire pager
  // from its saved state, where the fragment manager has already
  // taken care of restoring the fragments we previously had instantiated.
  if (mFragments.size() > position) {
    Fragment f = mFragments.get(position);
    if (f != null) {
      return f;
    }
  }

  if (mCurTransaction == null) {
    mCurTransaction = mFragmentManager.beginTransaction();
  }

  Fragment fragment = getItem(position);
  if (DEBUG) Timber.v("Adding item #%d: f=%s", position, fragment);
  if (mSavedState.size() > position) {
    Fragment.SavedState fss = mSavedState.get(position);
    if (fss != null) {
      fragment.setInitialSavedState(fss);
    }
  }
  while (mFragments.size() <= position) {
    mFragments.add(null);
  }
  fragment.setMenuVisibility(false);
  fragment.setUserVisibleHint(false);
  mFragments.set(position, fragment);
  mCurTransaction.add(container.getId(), fragment);

  return fragment;
}
 
開發者ID:Elias33,項目名稱:Quran,代碼行數:37,代碼來源:FragmentStatePagerAdapter.java

示例4: instantiateItem

import android.support.v4.app.Fragment; //導入方法依賴的package包/類
@Override
public Object instantiateItem(ViewGroup container, int position) {
    // If we already have this item instantiated, there is nothing
    // to do.  This can happen when we are restoring the entire pager
    // from its saved state, where the fragment manager has already
    // taken care of restoring the fragments we previously had instantiated.
    if (mFragments.size() > position) {
        Fragment f = mFragments.get(position);
        if (f != null) {
            return f;
        }
    }

    if (mCurTransaction == null) {
        mCurTransaction = mFragmentManager.beginTransaction();
    }

    Fragment fragment = getItem(position);
    if (DEBUG) Log.v(TAG, "Adding item #" + position + ": f=" + fragment);
    if (mSavedState.size() > position) {
        Fragment.SavedState fss = mSavedState.get(position);
        if (fss != null) {
            fragment.setInitialSavedState(fss);
        }
    }
    while (mFragments.size() <= position) {
        mFragments.add(null);
    }
    fragment.setMenuVisibility(false);
    fragment.setUserVisibleHint(false);
    mFragments.set(position, fragment);
    mCurTransaction.add(container.getId(), fragment);

    return fragment;
}
 
開發者ID:aliumujib,項目名稱:Orin,代碼行數:36,代碼來源:CustomFragmentStatePagerAdapter.java

示例5: removeToDetachFragment

import android.support.v4.app.Fragment; //導入方法依賴的package包/類
private Fragment removeToDetachFragment(StateChange stateChange, Path key) {
    Fragment fragment = fragmentManager.findFragmentByTag(key.getFragmentTag());
    if(fragment != null && (fragment.isDetached() || fragment.getView() == null)) {
        FragmentTransaction fragmentTransaction = beginFragmentTransaction(stateChange);
        Fragment.SavedState savedState = fragmentManager.saveFragmentInstanceState(fragment);
        fragmentTransaction.remove(fragment);
        fragmentTransaction.commitNow();
        fragment.setInitialSavedState(savedState);
    }
    return fragment;
}
 
開發者ID:Zhuinden,項目名稱:simple-stack,代碼行數:12,代碼來源:MasterDetailFragmentStateChanger.java

示例6: instantiateItem

import android.support.v4.app.Fragment; //導入方法依賴的package包/類
@Override
    public Object instantiateItem(ViewGroup container, int position) {
        // If we already have this item instantiated, there is nothing
        // to do. This can happen when we are restoring the entire pager
        // from its saved state, where the fragment manager has already
        // taken care of restoring the fragments we previously had instantiated.
        Fragment f = mFragments.get(position);
        if (f != null) {
            return f;
        }

        if (mCurTransaction == null) {
            mCurTransaction = mFragmentManager.beginTransaction();
        }

        Fragment fragment = getItem(position);
//		if (DEBUG)
//			Log.v(TAG, "Adding item #" + position + ": f=" + fragment);
        Fragment.SavedState fss = mSavedState.get(position);
        if (fss != null) {
            fragment.setInitialSavedState(fss);
        }
        fragment.setMenuVisibility(false);
        fragment.setUserVisibleHint(false);
        mFragments.put(position, fragment);
        mCurTransaction.add(container.getId(), fragment);

        return fragment;
    }
 
開發者ID:snowwolf10285,項目名稱:PicShow-zhaipin,代碼行數:30,代碼來源:FragmentListPageAdapter.java

示例7: instantiateItem

import android.support.v4.app.Fragment; //導入方法依賴的package包/類
@Override
public Object instantiateItem(ViewGroup container, int position) {
    // If we already have this item instantiated, there is nothing
    // to do.  This can happen when we are restoring the entire pager
    // from its saved state, where the fragment manager has already
    // taken care of restoring the fragments we previously had instantiated.
    if (mFragments.size() > position) {
        Fragment f = getCurrentFragment(position);
        if (f != null) {
            return f;
        }
    }

    if (mCurTransaction == null) {
        mCurTransaction = mFragmentManager.beginTransaction();
    }

    int currentViewMode = getCurrentViewMode(position);
    Fragment fragment = getItem(position, currentViewMode);
    // NEW: record the fragment's position and view mode
    viewModeMap.put(fragment, currentViewMode);
    positionMap.put(fragment, position);
    if (DEBUG)
        Log.v(TAG, "Adding item #" + position + "-" + currentViewMode + ": f=" + fragment);
    if (mSavedState.size() > position) {
        Fragment.SavedState fss = getCurrentSavedState(position);
        if (fss != null) {
            fragment.setInitialSavedState(fss);
        }
    }
    while (mFragments.size() <= position) {
        mFragments.add(null);
    }
    fragment.setMenuVisibility(false);
    fragment.setUserVisibleHint(false);
    setCurrentFragment(position, fragment);

    mCurTransaction.add(container.getId(), fragment);

    return fragment;
}
 
開發者ID:mocircle,項目名稱:devsuite-android,代碼行數:42,代碼來源:MultiFragmentStatePagerAdapter.java


注:本文中的android.support.v4.app.Fragment.setInitialSavedState方法示例由純淨天空整理自Github/MSDocs等開源代碼及文檔管理平台,相關代碼片段篩選自各路編程大神貢獻的開源項目,源碼版權歸原作者所有,傳播和使用請參考對應項目的License;未經允許,請勿轉載。