package com.itap.voiceemoticon.adapter;
import com.itap.voiceemoticon.activity.fragment.BaseFragment;
import java.util.ArrayList;
import java.util.List;
import org.tadpole.view.PagerAdapter;
import org.tadpole.view.ViewPager;
import android.os.Parcelable;
import android.view.LayoutInflater;
import android.view.View;
/**
* ViewPager适配器
*/
public class MyPagerAdapter extends PagerAdapter {
public List<BaseFragment> mFragments;
public MyPagerAdapter(List<BaseFragment> mListViews) {
this.mFragments = mListViews;
}
@Override
public void destroyItem(View arg0, int arg1, Object arg2) {
final List<BaseFragment> list = mFragments;
if (null == list) {
return;
}
BaseFragment fragment = list.get(arg1);
View view = fragment.getContent();
if (null == view) {
fragment.onDestory();
return;
}
if (view.getParent() != null) {
((ViewPager)arg0).removeView(view);
}
}
@Override
public void finishUpdate(View arg0) {
}
@Override
public int getCount() {
return mFragments.size();
}
@Override
public Object instantiateItem(View viewPager, int postion) {
BaseFragment fragment = mFragments.get(postion);
View view = fragment.getContent();
if (null == view) {
fragment.createContent(LayoutInflater.from(viewPager.getContext()));
view = fragment.getContent();
if (null == view) {
return null;
}
}
((ViewPager)viewPager).addView(view, 0);
return view;
}
@Override
public boolean isViewFromObject(View arg0, Object arg1) {
return arg0 == (arg1);
}
@Override
public void restoreState(Parcelable arg0, ClassLoader arg1) {
}
@Override
public Parcelable saveState() {
return null;
}
@Override
public void startUpdate(View arg0) {
}
@Override
public float getPageWidth(int position) {
if (position == 0) {
return 1f;
} else if (position == 1) {
return 1f;
} else {
return 1f;
}
}
}