Example usage for android.support.v4.app FragmentManager getBackStackEntryAt

List of usage examples for android.support.v4.app FragmentManager getBackStackEntryAt

Introduction

In this page you can find the example usage for android.support.v4.app FragmentManager getBackStackEntryAt.

Prototype

public abstract BackStackEntry getBackStackEntryAt(int index);

Source Link

Document

Return the BackStackEntry at index index in the back stack; entries start index 0 being the bottom of the stack.

Usage

From source file:org.kaaproject.kaa.demo.photoframe.util.Utils.java

public static Fragment getTopFragment(FragmentActivity activity) {
    if (activity == null) {
        Log.e(TAG, "Unable to get top fragment. Invalid args.");
        return null;
    }/*from w w  w . j  a  v  a2s. c  o  m*/

    FragmentManager fm = activity.getSupportFragmentManager();
    if (fm.getBackStackEntryCount() > 0) {
        FragmentManager.BackStackEntry entry = fm.getBackStackEntryAt(fm.getBackStackEntryCount() - 1);
        return fm.findFragmentByTag(entry.getName());
    }
    return null;
}

From source file:org.kaaproject.kaa.demo.photoframe.fragment.BaseFragment.java

public static Fragment getCurrentFragment(MainActivity activity) {

    final FragmentManager fm = activity.getSupportFragmentManager();
    if (fm.getBackStackEntryCount() > 0) {
        final FragmentManager.BackStackEntry entry = fm.getBackStackEntryAt(fm.getBackStackEntryCount() - 1);
        return fm.findFragmentByTag(entry.getName());
    }/*from   ww  w  . ja va 2s. c  om*/
    return null;
}

From source file:com.example.android.supportv4.app.FragmentStackFragmentSupport.java

@Override
public View onCreateView(LayoutInflater inflater, ViewGroup container, Bundle savedInstanceState) {
    View v = inflater.inflate(R.layout.fragment_stack, container, false);

    // Watch for button clicks.
    Button button = (Button) v.findViewById(R.id.new_fragment);
    button.setOnClickListener(new OnClickListener() {
        public void onClick(View v) {
            addFragmentToStack();/*  w  w  w . j  a  v a 2  s. com*/
        }
    });
    button = (Button) v.findViewById(R.id.delete_fragment);
    button.setOnClickListener(new OnClickListener() {
        public void onClick(View v) {
            getChildFragmentManager().popBackStack();
        }
    });
    button = (Button) v.findViewById(R.id.home);
    button.setOnClickListener(new OnClickListener() {
        public void onClick(View v) {
            // If there is a back stack, pop it all.
            FragmentManager fm = getChildFragmentManager();
            if (fm.getBackStackEntryCount() > 0) {
                fm.popBackStack(fm.getBackStackEntryAt(0).getId(), FragmentManager.POP_BACK_STACK_INCLUSIVE);
            }
        }
    });

    return v;
}

From source file:com.example.android.supportv13.app.FragmentStackSupport.java

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.fragment_stack);

    // Watch for button clicks.
    Button button = (Button) findViewById(R.id.new_fragment);
    button.setOnClickListener(new OnClickListener() {
        public void onClick(View v) {
            addFragmentToStack();//from www  .  j a  v  a2  s.  com
        }
    });
    button = (Button) findViewById(R.id.home);
    button.setOnClickListener(new OnClickListener() {
        public void onClick(View v) {
            // If there is a back stack, pop it all.
            FragmentManager fm = getSupportFragmentManager();
            if (fm.getBackStackEntryCount() > 0) {
                fm.popBackStack(fm.getBackStackEntryAt(0).getId(), FragmentManager.POP_BACK_STACK_INCLUSIVE);
            }
        }
    });

    if (savedInstanceState == null) {
        // Do first time initialization -- add initial fragment.
        Fragment newFragment = CountingFragment.newInstance(mStackLevel);
        FragmentTransaction ft = getSupportFragmentManager().beginTransaction();
        ft.add(R.id.simple_fragment, newFragment).commit();
    } else {
        mStackLevel = savedInstanceState.getInt("level");
    }
}

From source file:com.ambantis.magic.views.FragmentStackSupport.java

@Override
protected void onCreate(Bundle savedInstanceState) {
    super.onCreate(savedInstanceState);
    setContentView(R.layout.fragment_stack);

    // Watch for button clicks.
    Button button = (Button) findViewById(R.id.new_fragment);
    button.setOnClickListener(new OnClickListener() {
        public void onClick(View v) {
            addFragmentToStack();/*from   w  w  w  .j  av  a  2  s .com*/
        }
    });
    button = (Button) findViewById(R.id.home);
    button.setOnClickListener(new OnClickListener() {
        public void onClick(View v) {
            // If there is a back stack, pop it all.
            FragmentManager fm = getSupportFragmentManager();
            if (fm.getBackStackEntryCount() > 0) {
                fm.popBackStack(fm.getBackStackEntryAt(0).getId(), FragmentManager.POP_BACK_STACK_INCLUSIVE);
            }
        }
    });

    if (savedInstanceState == null) {
        // Do first time initialization -- add initial fragment.
        Fragment newFragment = CountingFragment.newInstance(mIndex);
        FragmentTransaction ft = getSupportFragmentManager().beginTransaction();
        ft.add(R.id.simple_fragment, newFragment).commit();
    } else {
        mStackLevel = savedInstanceState.getInt("level");
    }
}

From source file:com.jaspersoft.android.jaspermobile.activities.repository.fragment.SearchControllerFragment.java

public String getResourceUri() {
    FragmentManager fm = getFragmentManager();
    int entryCount = fm.getBackStackEntryCount();
    if (entryCount == 0) {
        return ResourcesFragment.ROOT_URI;
    }// w ww . jav  a 2  s . c om
    FragmentManager.BackStackEntry entry = fm.getBackStackEntryAt(entryCount - 1);
    return entry.getName();
}

From source file:com.jaspersoft.android.jaspermobile.activities.repository.fragment.RepositorySearchFragment.java

public String getResourceUri() {
    FragmentManager fm = getFragmentManager();
    int entryCount = fm.getBackStackEntryCount();
    if (entryCount == 0) {
        return RepositoryFragment.ROOT_URI;
    }//  w  w w. j  ava2 s  .com
    FragmentManager.BackStackEntry entry = fm.getBackStackEntryAt(entryCount - 1);
    return entry.getName();
}

From source file:org.barbon.mangaget.BaseFragmentActivity.java

protected void popBackStack(String name) {
    FragmentManager manager = getSupportFragmentManager();

    // should be equivalent to manager.popBackStack(name, 0), but
    // for some reason the former does not work
    for (int i = manager.getBackStackEntryCount(); i != 0; --i) {
        if (name.equals(manager.getBackStackEntryAt(i - 1).getName()))
            break;

        manager.popBackStack();/*w  ww  . ja  v  a 2  s.  co  m*/
    }

    manager.executePendingTransactions();
}

From source file:vn.cybersoft.obs.android.activities.MainActivity.java

@Override
public void onBackPressed() {
    FragmentManager mgr = getSupportFragmentManager();
    int idxLast = mgr.getBackStackEntryCount() - 2;
    if (idxLast < 0) {
        this.setResult(RESULT_OK);
        finish();/*  w  w w  .  j  av  a2 s. c o  m*/
    } else {
        BackStackEntry entry = mgr.getBackStackEntryAt(idxLast);
        swapToFragmentView(ScreenList.valueOf(entry.getName()));
    }
}

From source file:de.fahrgemeinschaft.BaseActivity.java

protected void showFragment(Fragment f, String name, int in, int out) {
    setTitle(name);//from  ww w .ja v a2  s  . co m
    FragmentManager fm = getSupportFragmentManager();
    for (int i = fm.getBackStackEntryCount() - 1; i >= 0; i--) {
        if (fm.getBackStackEntryAt(i).getName().equals(name)) {
            for (int j = fm.getBackStackEntryCount() - 1; j > i; j--) {
                fm.popBackStackImmediate();
            }
            return;
        }
    }
    fm.beginTransaction().setCustomAnimations(in, R.anim.do_nix, R.anim.do_nix, out)
            .add(R.id.container, f, name).addToBackStack(name).commit();
}