package com.wasu.cs.adapter;

import android.content.Context;
import android.os.Parcelable;
import android.support.v4.view.PagerAdapter;
import android.support.v4.view.ViewPager;
import android.util.SparseArray;
import android.view.View;
import android.view.ViewGroup;


/**
 * 引导页面Adapter
 *
 * @author jiarun.yuan
 *
 */
public class GuideViewAdapter extends PagerAdapter {
	// 界面列表
//	private List<View> views;
	private SparseArray<View> views;
	private View currentView;



	public GuideViewAdapter(SparseArray<View> views, Context context) {
		this.views = views;


	}

	// 销毁arg1位置的界面
	@Override
	public void destroyItem(View arg0, int arg1, Object arg2) {
		((ViewPager) arg0).removeView(views.get(arg1));
	}

	@Override
	public void finishUpdate(View arg0) {
		// TODO Auto-generated method stub

	}
	@Override
	public void setPrimaryItem(ViewGroup container, int position, Object object) {
		currentView = views.get(position);
	}

	/**
	 * 获取当前view
	 * @return
	 */
	public View getPrimaryItem() {
		return currentView;
	}

	// 获得当前界面数
	@Override
	public int getCount() {
		if (views != null) {
			return views.size();
		}

		return 0;
	}

	// 初始化arg1位置的界面
	@Override
	public Object instantiateItem(View arg0, int arg1) {
		((ViewPager) arg0).addView(views.get(arg1), 0);
		return views.get(arg1);
	}

	// 判断是否由对象生成界面
	@Override
	public boolean isViewFromObject(View arg0, Object arg1) {
		return (arg0 == arg1);
	}

	@Override
	public void restoreState(Parcelable arg0, ClassLoader arg1) {
		// TODO Auto-generated method stub

	}

	@Override
	public Parcelable saveState() {
		// TODO Auto-generated method stub
		return null;
	}

	@Override
	public void startUpdate(View arg0) {
		// TODO Auto-generated method stub

	}
}
