package com.devtf_l.app.adapter;
import android.support.v4.app.Fragment;
import android.support.v4.app.FragmentManager;
import android.support.v4.app.FragmentStatePagerAdapter;
import android.support.v4.util.SparseArrayCompat;
import android.view.ViewGroup;
import com.devtf_l.app.base.BaseTabFragment;
/**
* @Desc: MainFragment viewpager adapter
* @author ljh
* @date 2015-4-29 下午2:53:31
*/
public class MainPagerAdapter extends FragmentStatePagerAdapter {
private SparseArrayCompat<BaseTabFragment> mTabFragmentArray;
private String[] mTitles;
public MainPagerAdapter(FragmentManager fm, String[] mTitles) {
super(fm);
this.mTitles = mTitles;
mTabFragmentArray = new SparseArrayCompat<BaseTabFragment>();
}
@Override
public CharSequence getPageTitle(int position) {
return mTitles[position];
}
@Override
public int getCount() {
return mTitles.length;
}
/**
* <p>
* Title: instantiateItem
* </p>
* <p>
* Description:
* </p>
*
* @param container
* @param position
* @return
* @see com.devtf_l.app.adapter.FragmentPagerAdapter#instantiateItem(android.view.ViewGroup,
* int)
*/
@Override
public Object instantiateItem(ViewGroup container, final int position) {
return super.instantiateItem(container, position);
}
@Override
public Fragment getItem(int position) {
BaseTabFragment mFragment = mTabFragmentArray.get(position);
if (null == mFragment) {
mFragment = BaseTabFragment.newInstance(position);
mTabFragmentArray.put(position, mFragment);
}
return mFragment;
}
public SparseArrayCompat<BaseTabFragment> getTabFragmentArray() {
return mTabFragmentArray;
}
}