List of usage examples for android.support.v4.app FragmentTransaction commitAllowingStateLoss
public abstract int commitAllowingStateLoss();
From source file:com.seo.app.views.FragmentTabHost.java
@Override protected void onAttachedToWindow() { super.onAttachedToWindow(); String currentTab = getCurrentTabTag(); // Go through all tabs and make sure their fragments match // the correct state. FragmentTransaction ft = null; for (int i = 0; i < mTabs.size(); i++) { TabInfo tab = mTabs.get(i);//from w w w. j a va 2s . c o m tab.fragment = mFragmentManager.findFragmentByTag(tab.tag); // if (tab.fragment != null && !tab.fragment.isDetached()) { if (tab.fragment != null) { if (tab.tag.equals(currentTab)) { // The fragment for this tab is already there and // active, and it is what we really want to have // as the current tab. Nothing to do. mLastTab = tab; } else { // This fragment was restored in the active state, // but is not the current tab. Deactivate it. if (ft == null) { ft = mFragmentManager.beginTransaction(); } // ft.detach(tab.fragment); ft.hide(tab.fragment); } } } // We are now ready to go. Make sure we are switched to the // correct tab. mAttached = true; ft = doTabChanged(currentTab, ft); if (ft != null) { ft.commitAllowingStateLoss(); // mFragmentManager.executePendingTransactions(); } }
From source file:com.metinkale.prayerapp.compass.Main.java
private void updateFrag(Mode mode) { if (mMode != mode) { FragmentManager fragmentManager = getSupportFragmentManager(); FragmentTransaction fragmentTransaction = fragmentManager.beginTransaction(); if ((mode == Mode.TwoDim) && mFrag2D.mHidden) { fragmentTransaction.remove((Fragment) mList); mList = mFrag2D;/* www. ja va 2s . c o m*/ mFrag2D.show(); } else if (mode == Mode.ThreeDim) { if (PermissionUtils.get(this).pCamera) { if (mFrag3D == null) { mFrag3D = new Frag3D(); } if (mList != mFrag3D) { fragmentTransaction.replace(R.id.frag, mFrag3D, "3d"); mList = mFrag3D; mFrag2D.hide(); } } else { PermissionUtils.get(this).needCamera(this); } } else if (mode == Mode.Map) { if (mFragMap == null) { mFragMap = new FragMap(); } if (mList != mFragMap) { fragmentTransaction.replace(R.id.frag, mFragMap, "map"); mList = mFragMap; mFrag2D.hide(); } } if (!isFinishing()) fragmentTransaction.commitAllowingStateLoss(); } mMode = mode; }
From source file:com.mhtl.businesscenter.widget.CustomFragmentTabHost.java
@Override protected void onAttachedToWindow() { super.onAttachedToWindow(); String currentTab = getCurrentTabTag(); // Go through all tabs and make sure their fragments match // the correct state. FragmentTransaction ft = null; for (int i = 0; i < mTabs.size(); i++) { TabInfo tab = mTabs.get(i);//w w w . j a va2s .c o m tab.fragment = mFragmentManager.findFragmentByTag(tab.tag); // if (tab.fragment != null && !tab.fragment.isDetached()) { if (tab.fragment != null) { if (tab.tag.equals(currentTab)) { // The fragment for this tab is already there and // active, and it is what we really want to have // as the current tab. Nothing to do. mLastTab = tab; } else { // This fragment was restored in the active state, // but is not the current tab. Deactivate it. if (ft == null) { ft = mFragmentManager.beginTransaction(); } // ft.detach(tab.fragment); ft.hide(tab.fragment); } } } // We are now ready to go. Make sure we are switched to the // correct tab. mAttached = true; ft = doTabChanged(currentTab, ft); if (ft != null) { // ft.commit(); ft.commitAllowingStateLoss(); mFragmentManager.executePendingTransactions(); } }
From source file:com.android.gallery3d.filtershow.FilterShowActivity.java
public void loadMainPanel() { if (findViewById(R.id.main_panel_container) == null) { return;//from w w w . j av a 2 s .c o m } MainPanel panel = new MainPanel(); FragmentTransaction transaction = getSupportFragmentManager().beginTransaction(); transaction.replace(R.id.main_panel_container, panel, MainPanel.FRAGMENT_TAG); transaction.commitAllowingStateLoss(); }
From source file:com.onefengma.taobuxiu.views.core.FragmentTabHost.java
@Override protected void onAttachedToWindow() { super.onAttachedToWindow(); String currentTab = getCurrentTabTag(); // Go through all tabs and make sure their fragments match // the correct state. FragmentTransaction ft = null; for (int i = 0; i < mTabs.size(); i++) { TabInfo tab = mTabs.get(i);/*from ww w. j av a 2 s . c o m*/ tab.fragment = mFragmentManager.findFragmentByTag(tab.tag); // if (tab.fragment != null && !tab.fragment.isDetached()) { if (tab.fragment != null) { if (tab.tag.equals(currentTab)) { // The fragment for this tab is already there and // active, and it is what we really want to have // as the current tab. Nothing to do. mLastTab = tab; } else { // This fragment was restored in the active state, // but is not the current tab. Deactivate it. if (ft == null) { ft = mFragmentManager.beginTransaction(); } // ft.detach(tab.fragment); ft.hide(tab.fragment); } } } // We are now ready to go. Make sure we are switched to the // correct tab. mAttached = true; ft = doTabChanged(currentTab, ft); if (ft != null) { // ft.commit(); ft.commitAllowingStateLoss(); mFragmentManager.executePendingTransactions(); } }
From source file:com.ustc.dystu.dandelion.fragment.BaseFragmentTabHost.java
@Override protected void onAttachedToWindow() { super.onAttachedToWindow(); String currentTab = getCurrentTabTag(); Logger.d("TAB", "currentTab:" + currentTab); // Go through all tabs and make sure their fragments match // the correct state. FragmentTransaction ft = null; for (int i = 0; i < mTabs.size(); i++) { TabInfo tab = mTabs.get(i);//from w w w. j ava 2 s. c om tab.fragment = mFragmentManager.findFragmentByTag(tab.tag); if (tab.fragment != null && !tab.fragment.isDetached()) { if (tab.tag.equals(currentTab)) { // The fragment for this tab is already there and // active, and it is what we really want to have // as the current tab. Nothing to do. mLastTab = tab; Logger.d("TAB", "lastTab:" + mLastTab.tag); } else { // This fragment was restored in the active state, // but is not the current tab. Deactivate it. if (ft == null) { ft = mFragmentManager.beginTransaction(); } Logger.d("TAB", "detachTab:" + tab.tag); ft.detach(tab.fragment); } } } // We are now ready to go. Make sure we are switched to the // correct tab. mAttached = true; ft = doTabChanged(currentTab, ft); if (ft != null) { // ft.commit(); ft.commitAllowingStateLoss(); mFragmentManager.executePendingTransactions(); } }
From source file:com.yahala.ui.LaunchActivity.java
public void finishFragment(boolean bySwipe) { if (getCurrentFocus() != null) { OSUtilities.hideKeyboard(getCurrentFocus()); }//www. j a v a 2 s.c o m if (ApplicationLoader.fragmentsStack.size() < 2) { for (BaseFragment fragment : ApplicationLoader.fragmentsStack) { fragment.onFragmentDestroy(); } ApplicationLoader.fragmentsStack.clear(); MainActivity fragment = new MainActivity(); fragment.onFragmentCreate(); ApplicationLoader.fragmentsStack.add(fragment); getSupportFragmentManager().beginTransaction().replace(R.id.container, fragment, "chats") .commitAllowingStateLoss(); return; } BaseFragment fragment = ApplicationLoader.fragmentsStack.get(ApplicationLoader.fragmentsStack.size() - 1); fragment.onFragmentDestroy(); BaseFragment prev = ApplicationLoader.fragmentsStack.get(ApplicationLoader.fragmentsStack.size() - 2); FragmentManager fm = getSupportFragmentManager(); FragmentTransaction fTrans = fm.beginTransaction(); SharedPreferences preferences = ApplicationLoader.applicationContext.getSharedPreferences("mainconfig", Activity.MODE_PRIVATE); boolean animations = preferences.getBoolean("view_animations", true); if (animations) { if (bySwipe) { fTrans.setCustomAnimations(R.anim.no_anim, R.anim.no_anim); } else { fTrans.setCustomAnimations(R.anim.scale_in_out_d_r, R.anim.scale_out_in_d_r); } } fTrans.replace(R.id.container, prev, prev.getTag()); fTrans.commitAllowingStateLoss(); ApplicationLoader.fragmentsStack.remove(ApplicationLoader.fragmentsStack.size() - 1); }
From source file:org.proninyaroslav.libretorrent.fragments.DetailTorrentFragment.java
private void initFragments() { if (viewPager != null) { return;//from w w w . ja va 2s. c o m } ArrayList<BencodeFileItem> files = null; ArrayList<Priority> priorities = null; if (infoCache != null) { files = infoCache.getFiles(); } if (torrent != null && files != null) { /* * The index position in array must be * equal to the priority position in array */ priorities = new ArrayList<>(); List<Integer> torrentPriorities = torrent.getFilePriorities(); for (int i = 0; i < torrentPriorities.size(); i++) { priorities.add(Priority.fromSwig(torrentPriorities.get(i))); } } DetailTorrentInfoFragment fragmentInfo = DetailTorrentInfoFragment.newInstance(torrent, infoCache); DetailTorrentStateFragment fragmentState = DetailTorrentStateFragment.newInstance(infoCache); DetailTorrentFilesFragment fragmentFiles = DetailTorrentFilesFragment.newInstance(files, priorities); DetailTorrentTrackersFragment fragmentTrackers = DetailTorrentTrackersFragment.newInstance(); DetailTorrentPeersFragment fragmentPeers = DetailTorrentPeersFragment.newInstance(); DetailTorrentPiecesFragment fragmentPieces = DetailTorrentPiecesFragment .newInstance(infoCache.getNumPieces(), infoCache.getPieceLength()); viewPager = (ViewPager) activity.findViewById(R.id.detail_torrent_viewpager); if (viewPager == null) { return; } /* Removing previous ViewPagerAdapter fragments, if any */ if (Utils.isTablet(activity.getApplicationContext())) { android.support.v4.app.FragmentManager fm = activity.getSupportFragmentManager(); List<android.support.v4.app.Fragment> fragments = fm.getFragments(); if (fragments != null) { FragmentTransaction ft = fm.beginTransaction(); for (android.support.v4.app.Fragment f : fragments) { if (f != null) { ft.remove(f); } } ft.commitAllowingStateLoss(); } } adapter = new ViewPagerAdapter(activity.getSupportFragmentManager()); adapter.addFragment(fragmentInfo, INFO_FRAG_POS, getString(R.string.torrent_info)); adapter.addFragment(fragmentState, STATE_FRAG_POS, getString(R.string.torrent_state)); adapter.addFragment(fragmentFiles, FILE_FRAG_POS, getString(R.string.torrent_files)); adapter.addFragment(fragmentTrackers, TRACKERS_FRAG_POS, getString(R.string.torrent_trackers)); adapter.addFragment(fragmentPeers, PEERS_FRAG_POS, getString(R.string.torrent_peers)); adapter.addFragment(fragmentPieces, PIECES_FRAG_POS, getString(R.string.torrent_pieces)); viewPager.setAdapter(adapter); viewPager.setOffscreenPageLimit(6); viewPager.addOnPageChangeListener(new ViewPager.OnPageChangeListener() { @Override public void onPageScrolled(int position, float positionOffset, int positionOffsetPixels) { /* Nothing */ } @Override public void onPageSelected(int position) { switch (position) { case STATE_FRAG_POS: DetailTorrentStateFragment stateFrag = (DetailTorrentStateFragment) adapter .getItem(STATE_FRAG_POS); if (stateFrag != null) { stateFrag.setState(stateCache); stateFrag.setActiveAndSeedingTime(activeTimeCache, seedingTimeCache); } break; case FILE_FRAG_POS: DetailTorrentFilesFragment fileFrag = (DetailTorrentFilesFragment) adapter .getItem(FILE_FRAG_POS); if (fileFrag != null) { fileFrag.setFilesReceivedBytes(stateCache.filesReceivedBytes); } break; case TRACKERS_FRAG_POS: DetailTorrentTrackersFragment trackersFrag = (DetailTorrentTrackersFragment) adapter .getItem(TRACKERS_FRAG_POS); if (trackersFrag != null) { trackersFrag.setTrackersList(new ArrayList<>(trackersCache.getAll())); } break; case PEERS_FRAG_POS: DetailTorrentPeersFragment peersFrag = (DetailTorrentPeersFragment) adapter .getItem(PEERS_FRAG_POS); if (peersFrag != null) { peersFrag.setPeerList(new ArrayList<>(peersCache.getAll())); } break; case PIECES_FRAG_POS: DetailTorrentPiecesFragment piecesFrag = (DetailTorrentPiecesFragment) adapter .getItem(PIECES_FRAG_POS); if (piecesFrag != null) { piecesFrag.setPieces(piecesCache); piecesFrag.setDownloadedPiecesCount(stateCache.downloadedPieces); } break; } } @Override public void onPageScrollStateChanged(int state) { /* Nothing */ } }); tabLayout = (TabLayout) activity.findViewById(R.id.detail_torrent_tabs); int colorId = (childInActionMode ? R.color.action_mode : R.color.primary); setTabLayoutColor(colorId); tabLayout.setupWithViewPager(viewPager); if (bound && serviceCallback != null) { try { ipc.sendTorrentStateOneShot(serviceCallback, clientCallback); } catch (RemoteException e) { Log.e(TAG, Log.getStackTraceString(e)); } } }
From source file:com.android.gallery3d.v5.filtershow.FilterShowActivity.java
public void loadMainPanel() { if (findViewById(R.id.main_panel_container) == null) { return;// w ww.java 2s. c o m } LewaMainPanel panel = new LewaMainPanel(); FragmentTransaction transaction = getSupportFragmentManager().beginTransaction(); transaction.replace(R.id.main_panel_container, panel, MainPanel.FRAGMENT_TAG); transaction.commitAllowingStateLoss(); }
From source file:org.telegram.ui.LaunchActivity.java
public void presentFragment(BaseFragment fragment, String tag, boolean removeLast, boolean bySwipe) { if (getCurrentFocus() != null) { Utilities.hideKeyboard(getCurrentFocus()); }/*from ww w .j a va 2 s .c om*/ if (!fragment.onFragmentCreate()) { return; } BaseFragment current = null; if (!ApplicationLoader.fragmentsStack.isEmpty()) { current = ApplicationLoader.fragmentsStack.get(ApplicationLoader.fragmentsStack.size() - 1); } if (current != null) { current.willBeHidden(); } FragmentManager fm = getSupportFragmentManager(); FragmentTransaction fTrans = fm.beginTransaction(); if (removeLast && current != null) { ApplicationLoader.fragmentsStack.remove(ApplicationLoader.fragmentsStack.size() - 1); current.onFragmentDestroy(); } SharedPreferences preferences = ApplicationLoader.applicationContext.getSharedPreferences("mainconfig", Activity.MODE_PRIVATE); boolean animations = preferences.getBoolean("view_animations", true); if (animations) { if (bySwipe) { fTrans.setCustomAnimations(R.anim.slide_left, R.anim.no_anim); } else { fTrans.setCustomAnimations(R.anim.scale_in, R.anim.no_anim); } } try { fTrans.replace(R.id.container, fragment, tag); fTrans.commitAllowingStateLoss(); } catch (Exception e) { FileLog.e("tmessages", e); } ApplicationLoader.fragmentsStack.add(fragment); }