List of usage examples for android.support.v4.app FragmentManager getBackStackEntryCount
public abstract int getBackStackEntryCount();
From source file:com.recurly.androidsdk.BaseActivity.java
protected void popFragment() { FragmentManager fragmentManager = getSupportFragmentManager(); int backStackEntryCount = fragmentManager.getBackStackEntryCount(); if (backStackEntryCount >= 1) { // remove existing fragment fragmentManager.executePendingTransactions(); FragmentTransaction fragmentTransaction = getSupportFragmentManager().beginTransaction(); BaseFragment currentFragment = (BaseFragment) fragmentManager .findFragmentByTag("" + fragmentManager.getBackStackEntryCount()); BaseFragment nextFragment = (BaseFragment) fragmentManager .findFragmentByTag("" + (fragmentManager.getBackStackEntryCount() - 1)); if (nextFragment == null) { // no more fragments, so exit finish();// w w w .j a v a 2s .c om return; } fragmentTransaction.remove(currentFragment); fragmentTransaction.show(nextFragment); fragmentManager.popBackStack(); fragmentTransaction.commit(); } else { // going to exit.. super.onBackPressed(); } }
From source file:pl.edu.pw.eiti.groupbuying.android.ConfirmPaymentActivity.java
@Override protected void onResumeFragments() { super.onResumeFragments(); if (restoredFragment) { return;/*from ww w. j a v a 2s . co m*/ } FragmentManager manager = getSupportFragmentManager(); if (manager.getBackStackEntryCount() == 0) { showFragment(SUMMARY, false); } }
From source file:com.mocap.MainActivity.java
@Override public void onBackPressed() { FragmentManager manager = getSupportFragmentManager(); if (manager.getBackStackEntryCount() > 1) { super.onBackPressed(); } else {/*from w ww. j av a2s . co m*/ super.onBackPressed(); } }
From source file:com.blogspot.ksoichiro.android.sample.transition.test.NormalTransitionTest.java
public void testNormalTransition() { // Activity?// ww w . j ava2 s. c om ActivityMonitor monitorMain = new ActivityMonitor(MainActivity.class.getCanonicalName(), null, false); ActivityMonitor monitorSecond = new ActivityMonitor(SecondActivity.class.getCanonicalName(), null, false); getInstrumentation().addMonitor(monitorMain); getInstrumentation().addMonitor(monitorSecond); // ??Fragment?BackStack?????? FragmentActivity activity = (FragmentActivity) getActivity(); FragmentManager fm = activity.getSupportFragmentManager(); assertEquals(0, fm.getBackStackEntryCount()); // ??Fragment? Fragment frag = fm.findFragmentByTag("tag"); assertNotNull(frag); assertEquals(Fragment1.class, frag.getClass()); // ??(Fragment)? TouchUtils.tapView(this, getActivity().findViewById(R.id.btnFrag1)); getInstrumentation().waitForIdleSync(); // BackStack?Fragment???(?)??? assertEquals(1, fm.getBackStackEntryCount()); // ??(Fragment)????? frag = fm.findFragmentByTag("tag"); assertNotNull(frag); assertEquals(Fragment2.class, frag.getClass()); // ??(Activity)? TouchUtils.tapView(this, getActivity().findViewById(R.id.btnFrag2)); getInstrumentation().waitForMonitorWithTimeout(monitorSecond, 2000); // ?Activity??????? assertEquals(1, monitorSecond.getHits()); // ? sendKeys(KeyEvent.KEYCODE_BACK); getInstrumentation().waitForIdleSync(); // ??(Activity)?????? assertEquals(1, monitorMain.getHits()); // ???Fragment?BackStack???????? activity = (FragmentActivity) monitorMain.getLastActivity(); fm = activity.getSupportFragmentManager(); assertEquals(1, fm.getBackStackEntryCount()); frag = fm.findFragmentByTag("tag"); assertNotNull(frag); assertEquals(Fragment2.class, frag.getClass()); // ? sendKeys(KeyEvent.KEYCODE_BACK); getInstrumentation().waitForIdleSync(); // ???Fragment????BackStack????????? assertEquals(0, fm.getBackStackEntryCount()); frag = fm.findFragmentByTag("tag"); assertNotNull(frag); assertEquals(Fragment1.class, frag.getClass()); }
From source file:org.gnucash.android.ui.settings.PreferenceActivity.java
@Override public boolean onOptionsItemSelected(MenuItem item) { switch (item.getItemId()) { case android.R.id.home: if (Build.VERSION.SDK_INT >= Build.VERSION_CODES.HONEYCOMB) { android.app.FragmentManager fm = getFragmentManager(); if (fm.getBackStackEntryCount() > 0) { fm.popBackStack();//from w ww . j av a2s .c o m } else { finish(); } } else { finish(); } return true; default: return false; } }
From source file:com.example.snapcacheexample.MainActivity.java
private void onSessionStateChange(Session session, SessionState state, Exception exception) { if (isResumed) { FragmentManager manager = getSupportFragmentManager(); int backStackSize = manager.getBackStackEntryCount(); for (int i = 0; i < backStackSize; i++) { manager.popBackStack();/* w w w .j a va 2s. c o m*/ } // check for the OPENED state instead of session.isOpened() since for the // OPENED_TOKEN_UPDATED state, the selection fragment should already be showing. if (state.equals(SessionState.OPENED)) { showFragment(SELECTION, false); } else if (state.isClosed()) { showFragment(SPLASH, false); } } }
From source file:us.bridgeses.minder_tasks.viewtranslators.TaskActivity.java
@Override public void onBackPressed() { if (!presenter.onBackPressed()) { FragmentManager fragmentManager = getSupportFragmentManager(); if (fragmentManager.getBackStackEntryCount() != 0) { fragmentManager.popBackStack(); } else {/*from w w w.j ava 2s. c o m*/ super.onBackPressed(); } } }
From source file:org.mariotaku.twidere.activity.SettingsActivity.java
void showFragment(final Fragment fragment) { final FragmentManager fm = getSupportFragmentManager(); final int entry_count = fm.getBackStackEntryCount(); final FragmentTransaction ft = fm.beginTransaction(); for (int i = 0; i < entry_count; i++) { final int id = fm.getBackStackEntryAt(i).getId(); ft.remove(fm.findFragmentById(id)); }//from w w w . j av a 2s.c o m ft.commitAllowingStateLoss(); showFragment(fragment, false); }
From source file:io.github.waka.sevenhack.activities.MainActivity.java
@Override public void onBackPressed() { if (binding.drawer.isDrawerOpen(GravityCompat.START)) { binding.drawer.closeDrawer(GravityCompat.START); return;/*from www.j av a 2 s. c o m*/ } FragmentManager fm = getSupportFragmentManager(); if (fm.getBackStackEntryCount() > 0) { fm.popBackStack(); return; } super.onBackPressed(); }
From source file:com.kyakujin.android.tagnotepad.ui.NoteActivity.java
@Override protected void onCreate(Bundle savedInstanceState) { super.onCreate(savedInstanceState); setContentView(R.layout.activity_main); Intent intent = getIntent();// www .java 2 s .c o m String action = intent.getAction(); // DBG // FragmentManager.enableDebugLogging(true); // Log.d("debug", "ActivityTest: onCreate start"); // DBG // ?????????NoteEditFragment?????? if (Intent.ACTION_SEND.equals(action)) { Bundle extras = intent.getExtras(); if (extras != null) { String extBody = extras.getString(Intent.EXTRA_TEXT); String extTitle = extras.getString(Intent.EXTRA_SUBJECT); Bundle bundle = new Bundle(); if (extBody != null) { bundle.putString(Config.SHARED_BODY, extBody); } if (extTitle != null) { bundle.putString(Config.SHARED_TITLE, extTitle); } bundle.putInt("action", Config.ACTION_SENDED); Fragment fg = NoteEditFragment.newInstance(); FragmentManager manager = getSupportFragmentManager(); FragmentTransaction transaction = manager.beginTransaction(); fg.setArguments(bundle); transaction.add(android.R.id.content, fg, Config.TAG_NOTEEDIT_FRAGM); transaction.commit(); } } else { Fragment fg = NoteListFragment.newInstance(); if (!fg.isAdded()) { // NoteListFragment????? FragmentManager fm = getSupportFragmentManager(); for (int i = 0; i < fm.getBackStackEntryCount(); i++) { fm.popBackStack(); } getSupportFragmentManager().beginTransaction() .replace(android.R.id.content, fg, Config.TAG_NOTELIST_FRAGM).commit(); } } handleIntent(getIntent()); }