Question

In the android documentation on FragmentStatePagerAdapter it is explained that the adapter can be set up like this:

public static class MyAdapter extends FragmentStatePagerAdapter {
    public MyAdapter(FragmentManager fm) {
        super(fm);
    }

    @Override
    public int getCount() {
        return NUM_ITEMS;
    }

    @Override
    public Fragment getItem(int position) {
        return MyFragment.newInstance();
    }
}

I would like to use this, however, I would also like to manage the Fragments that were added with a FragmentManager. How can I do this? My approach is throwing a NullPointerException.

public static class MyAdapter extends FragmentStatePagerAdapter {
    private FragmentManager mFragmentManager;

    public MyAdapter(FragmentManager fm) {
        super(fm);
        mFragmentManager = fm;
    }

    @Override
    public int getCount() {
        return NUM_ITEMS;
    }

    @Override
    public Fragment getItem(int position) {
        mFragmentManager.beginTransaction()
            .add(MyFragment.newInstance(), MyFragment.TAG).commit();
        return mFragmentManager.findFragmentByTag(MyFragment.TAG);
    }
}

No correct solution

OTHER TIPS

How can I do this?

You write your own PagerAdapter implementation from scratch. FragmentPagerAdapter and FragmentStatePagerAdapter will do their own fragment transactions, colliding with yours.

Licensed under: CC-BY-SA with attribution
Not affiliated with StackOverflow
scroll top