package com.k1.description;
import java.util.HashMap;
import java.util.Map;
import android.os.Bundle;
import android.support.v4.view.PagerAdapter;
import android.support.v4.view.ViewPager;
import android.support.v4.view.ViewPager.OnPageChangeListener;
import android.view.View;
import android.view.View.OnClickListener;
import android.view.ViewGroup;
import android.view.animation.AlphaAnimation;
public class WelcomeActivity extends BaseActivity {
private static final int[] PAGERS = new int[] { R.layout.activity_welcome_pager1, R.layout.activity_welcome_pager4,
R.layout.activity_welcome_pager1, R.layout.activity_welcome_pager4, R.layout.activity_welcome_pager1 };
private ViewGroup mPoints;
private int mLast = 0;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
setContentView(R.layout.activity_welcome);
mPoints = (ViewGroup) findViewById(R.id.points);//滑动时移动的圆点
View view = mPoints.getChildAt(0);
view.setBackgroundResource(R.drawable.point_selected);
ViewPager vp = (ViewPager) findViewById(R.id.viewpager);
vp.setAdapter(new PagerAdapter() {
Map<Integer, View> viewMap = new HashMap<Integer, View>();
@Override
public int getCount() {
return 5;
}
@Override
public void destroyItem(ViewGroup container, int position, Object object) {
((ViewPager) container).removeView(viewMap.get(position));
}
@Override
public Object instantiateItem(ViewGroup container, int position) {
View view = viewMap.get(position);
if (view == null) {
view = getLayoutInflater().inflate(PAGERS[position], null);
AlphaAnimation a = new AlphaAnimation(0.5f, 1);
a.setDuration(300);
view.startAnimation(a);
viewMap.put(Integer.valueOf(position), view);
}
((ViewPager) container).addView(view);
return view;
}
@Override
public boolean isViewFromObject(View arg0, Object arg1) {
return arg0 == arg1;
}
@Override
public int getItemPosition(Object object) {
return super.getItemPosition(object);
}
});
vp.setOnPageChangeListener(new OnPageChangeListener() {
@Override
public void onPageSelected(int position) {
for (int i = 0; i < mPoints.getChildCount(); i++) {
View view = mPoints.getChildAt(i);
if (i == mLast) {
view.setBackgroundResource(R.drawable.point_unselected);
}
if (i == position) {
view.setBackgroundResource(R.drawable.point_selected);
}
}
mLast = position;
}
@Override
public void onPageScrolled(int arg0, float arg1, int arg2) {
}
@Override
public void onPageScrollStateChanged(int arg0) {
}
});
}
}