/**
* fragment適配器
*/
class FragmentAdapter extends FragmentPagerAdapter {
public FragmentAdapter(FragmentManager fm) {
super(fm);
}
@Override
public Fragment getItem(int position) {
return mFragmentList.get(position);
}
@Override
public int getCount() {
return mFragmentList == null ? 0 : mFragmentList.size();
}
@Override
public Object instantiateItem(ViewGroup container, int position) {
mTagList.put(position, makeFragmentName(container.getId(), getItemId(position)));
return super.instantiateItem(container, position);
}
}
/**
* 給每個fragment創建tag
* <p>
* 是根據源碼來的,不能隨便改返回字符串值!
*
* @param viewId
* @param id
* @return
*/
private static String makeFragmentName(int viewId, long id) {
return "android:switcher:" + viewId + ":" + id;
}