Advertisement
Not a member of Pastebin yet?
Sign Up,
it unlocks many cool features!
- private class MealsInCategoryPagerAdapter extends FragmentStatePagerAdapter {
- private SparseArray<WeakReference<MealsListFragment>> fragments=new SparseArray<>();
- MealsInCategoryPagerAdapter(FragmentManager fm) {
- super(fm);
- }
- @Override
- public Fragment getItem(int i)
- {
- if(i==0)
- return MealsListFragment.newInstance(category, -1);
- else return MealsListFragment.newInstance(category, category.children[i-1].id);
- }
- @Override
- public int getCount() {
- int count=1;
- if(category.children!=null)
- count+=category.children.length;
- return count;
- }
- @Override
- public CharSequence getPageTitle(int position) {
- if(position==0)
- return MyApplication.getInstance().getString(R.string.all);
- else return category.children[position-1].title;
- }
- @Override
- public Object instantiateItem(ViewGroup container, int position) {
- Object newObject = super.instantiateItem(container, position);
- fragments.append(position, new WeakReference<>((MealsListFragment)newObject));
- return newObject;
- }
- @Override
- public void destroyItem(ViewGroup container, int position, Object object) {
- fragments.delete(position);
- super.destroyItem(container, position, object);
- }
- public SparseArray<WeakReference<MealsListFragment>> getAllFragments()
- {
- return fragments;
- }
- }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement