package com.yuyh.sprintnba.ui.adapter;
import android.support.v4.app.Fragment;
import android.support.v4.app.FragmentManager;
import android.support.v4.app.FragmentStatePagerAdapter;
import android.view.ViewGroup;
import com.yuyh.sprintnba.ui.fragment.ImagePreFragment;
import java.util.HashMap;
import java.util.List;
public class VPImagePreViewAdapter extends FragmentStatePagerAdapter {
private HashMap<Integer, ImagePreFragment> fragmentMap = new HashMap<>();
private List<String> extraPics;
public VPImagePreViewAdapter(FragmentManager fm, List<String> extraPics) {
super(fm);
this.extraPics = extraPics;
}
@Override
public Fragment getItem(int position) {
ImagePreFragment fragment = fragmentMap.get(position);
if (fragment == null) {
fragment = ImagePreFragment.newInstance(extraPics.get(position));
fragmentMap.put(position, fragment);
}
return fragment;
}
@Override
public int getCount() {
return extraPics.size();
}
@Override
public void setPrimaryItem(ViewGroup container, int position, Object object) {
super.setPrimaryItem(container, position, object);
if (object instanceof Fragment) {
fragmentMap.put(position, (ImagePreFragment) object);
}
}
}