ReaderPageAdapter.java 1.1 KB

1234567891011121314151617181920212223242526272829303132333435363738394041424344454647
  1. package eu.kanade.mangafeed.ui.adapter;
  2. import android.support.v4.app.Fragment;
  3. import android.support.v4.app.FragmentManager;
  4. import java.util.List;
  5. import eu.kanade.mangafeed.data.models.Page;
  6. import eu.kanade.mangafeed.ui.fragment.ReaderPageFragment;
  7. public class ReaderPageAdapter extends SmartFragmentStatePagerAdapter {
  8. private List<Page> pages;
  9. public ReaderPageAdapter(FragmentManager fragmentManager) {
  10. super(fragmentManager);
  11. }
  12. @Override
  13. public int getCount() {
  14. if (pages != null)
  15. return pages.size();
  16. return 0;
  17. }
  18. @Override
  19. public Fragment getItem(int position) {
  20. return ReaderPageFragment.newInstance(pages.get(position));
  21. }
  22. public void setPages(List<Page> pages) {
  23. this.pages = pages;
  24. notifyDataSetChanged();
  25. }
  26. public void replacePage(int position, Page page) {
  27. pages.set(position, page);
  28. notifyDataSetChanged();
  29. ReaderPageFragment fragment = (ReaderPageFragment)getRegisteredFragment(position);
  30. if (fragment != null) {
  31. fragment.setPage(page);
  32. }
  33. }
  34. }