package com.jone.app.ui.guide;
import android.app.Activity;
import android.os.Bundle;
import android.support.v4.view.ViewPager;
import android.view.LayoutInflater;
import android.view.View;
import android.widget.ImageView;
import android.widget.LinearLayout;
import com.jone.app.R;
import com.jone.app.utils.Utils;
import java.util.ArrayList;
import java.util.List;
public class GuideActivity extends Activity implements ViewPager.OnPageChangeListener{
private ViewPager viewPager;
private GuideViewPagerAdapter guideViewPagerAdapter;
private List<View> views;
private ImageView[] dots; //底部小点图片
private int currentIndex;
@Override
protected void onCreate(Bundle savedInstanceState) {
super.onCreate(savedInstanceState);
Utils.setScreenOrientation(this);
setContentView(R.layout.activity_guide);
initViews();
initDots();
}
private void initViews(){
LayoutInflater inflater = LayoutInflater.from(this);
views = new ArrayList<>();
views.add(inflater.inflate(R.layout.view_guide_one, null));
views.add(inflater.inflate(R.layout.view_guide_two, null));
views.add(inflater.inflate(R.layout.view_guide_three, null));
views.add(inflater.inflate(R.layout.view_guide_four, null));
viewPager = (ViewPager) findViewById(R.id.viewPager);
guideViewPagerAdapter = new GuideViewPagerAdapter(views, GuideActivity.this);
viewPager.setAdapter(guideViewPagerAdapter);
viewPager.setOnPageChangeListener(this);
}
private void initDots(){
LinearLayout ll = (LinearLayout) findViewById(R.id.ll);
dots = new ImageView[views.size()];
for(int i = 0; i < views.size(); i++){
dots[i] = (ImageView)ll.getChildAt(i);
dots[i].setEnabled(true);
}
currentIndex = 0;
dots[currentIndex].setEnabled(false);
}
private void setCurrentDot(int position){
if(position < 0 || (position > views.size() - 1) || currentIndex == position){
return;
}
dots[position].setEnabled(false);
dots[currentIndex].setEnabled(true);
currentIndex = position;
}
@Override
public void onPageScrolled(int position, float positionOffset, int positionOffsetPixels) {
}
@Override// 设置底部小点选中状态
public void onPageSelected(int position) {
setCurrentDot(position);
}
@Override
public void onPageScrollStateChanged(int state) {
}
}