Advertisement
Guest User

Untitled

a guest
Feb 23rd, 2019
92
0
Never
Not a member of Pastebin yet? Sign Up, it unlocks many cool features!
text 1.53 KB | None | 0 0
  1. public class InputFragmentsPagerAdapter extends FragmentPagerAdapter {
  2. private SparseArray<Fragment> registeredFragments = new SparseArray<Fragment>();
  3. private int mCurrentCountUsingDisplay;
  4.  
  5. public InputFragmentsPagerAdapter(FragmentManager fm, int countUsingDisplay) {
  6. super(fm);
  7. mCurrentCountUsingDisplay = countUsingDisplay;
  8. }
  9.  
  10. @Override
  11. public Fragment getItem(int position) {
  12. Fragment fragment = registeredFragments.get(position);
  13. if(fragment==null){
  14. switch (position){
  15. case 0:
  16. fragment = new Fragment1();
  17. break;
  18. case 1:
  19. fragment = new Fragment2();
  20. break;
  21. }
  22. }
  23. return fragment;
  24. }
  25.  
  26. @NonNull
  27. @Override
  28. public Object instantiateItem(ViewGroup container, int position) {
  29. Fragment createdFragment = (Fragment) super.instantiateItem(container, position);
  30. registeredFragments.put(position,createdFragment);
  31. return createdFragment;
  32. }
  33.  
  34. @Override
  35. public void destroyItem(ViewGroup container, int position, Object object) {
  36. registeredFragments.remove(position);
  37. super.destroyItem(container,position,object);
  38. }
  39.  
  40. @Override
  41. public int getCount() {
  42. return mCurrentCountUsingDisplay;
  43. }
  44.  
  45. public View getFragmentView(int fragmentIndex) {
  46. return ((Fragment) registeredFragments.get(fragmentIndex)).getView();
  47. }
  48. }
Advertisement
Add Comment
Please, Sign In to add comment
Advertisement