package com.thomasdh.roosterpgplus.Adapters;
import android.content.Context;
import android.support.v4.view.PagerAdapter;
import android.view.View;
import android.view.ViewGroup;
import android.widget.FrameLayout;
import java.util.ArrayList;
public class AnimatedPagerAdapter extends PagerAdapter {
private final ArrayList<View> views = new ArrayList<>();
@Override
public int getCount() {
return views.size();
}
@Override
public boolean isViewFromObject(View view, Object o) {
return view == o;
}
@Override
public int getItemPosition(Object object) {
int index = views.indexOf(object);
if (index == -1)
return POSITION_NONE;
else
return index;
}
@Override
public Object instantiateItem(ViewGroup container, int position) {
View v = views.get(position);
container.addView(v);
return v;
}
@Override
public void destroyItem(ViewGroup container, int position, Object object) {
container.removeView((View) object);
}
public void setView(View newView, int position, Context context) {
if (views.size() <= position) {
FrameLayout parent = new FrameLayout(context);
parent.setLayoutParams(new FrameLayout.LayoutParams(ViewGroup.LayoutParams.WRAP_CONTENT, ViewGroup.LayoutParams.WRAP_CONTENT));
views.add(parent);
}
FrameLayout parent = (FrameLayout) views.get(position);
parent.removeAllViews();
parent.addView(newView);
}
}