首页 > 代码库 > Android ViewPager欢迎页+引导页+进入首页

Android ViewPager欢迎页+引导页+进入首页

 1 import android.app.Activity; 2 import android.content.Intent; 3 import android.content.SharedPreferences; 4 import android.content.SharedPreferences.Editor; 5 import android.os.Bundle; 6 import android.os.Handler; 7  8 /** 欢迎界面 */ 9 public class WelcomeAct extends Activity {10 11     private boolean isFirstIn = false;12     private static final int TIME = 2000;13     private static final int GO_HOME = 1000;14     private static final int GO_GUIDE = 1001;15 16     private Handler mHandler = new Handler() {17         public void handleMessage(android.os.Message msg) {18             switch (msg.what) {19             // 跳入主界面20             case GO_HOME:21                 goHome();22                 break;23             // 跳入引导页24             case GO_GUIDE:25                 goGuide();26                 break;27             }28         };29     };30 31     @Override32     protected void onCreate(Bundle savedInstanceState) {33         super.onCreate(savedInstanceState);34         setContentView(R.layout.welcome);35         init();36     }37 38     private void init() {39         SharedPreferences perPreferences = getSharedPreferences("jike",40                 MODE_PRIVATE);41         isFirstIn = perPreferences.getBoolean("isFirstIn", true);42         if (!isFirstIn) {43             mHandler.sendEmptyMessageDelayed(GO_HOME, TIME);44         } else {45             mHandler.sendEmptyMessageDelayed(GO_GUIDE, TIME);46             Editor editor = perPreferences.edit();47             editor.putBoolean("isFirstIn", false);48             editor.commit();49         }50     }51 52     private void goHome() {53         Intent i = new Intent(WelcomeAct.this, MainActivity.class);54         startActivity(i);55         finish();56     }57 58     private void goGuide() {59         Intent i = new Intent(WelcomeAct.this, Guide.class);60         startActivity(i);61         finish();62     }63 64 }

 

 1 import java.util.ArrayList; 2 import java.util.List; 3 import android.app.Activity; 4 import android.content.Intent; 5 import android.os.Bundle; 6 import android.support.v4.view.ViewPager; 7 import android.support.v4.view.ViewPager.OnPageChangeListener; 8 import android.view.LayoutInflater; 9 import android.view.View;10 import android.view.View.OnClickListener;11 import android.widget.Button;12 import android.widget.ImageView;13 14 /** 引导页 */15 public class Guide extends Activity implements OnPageChangeListener {16 17     private ViewPager vp;18     private ViewPagerAdapter vpAdapter;19     private List<View> views;20     private ImageView[] dots;21     private int[] ids = { R.id.iv1, R.id.iv2, R.id.iv3 };22     private Button start_btn;23 24     @Override25     protected void onCreate(Bundle savedInstanceState) {26         super.onCreate(savedInstanceState);27         setContentView(R.layout.guide);28         initViews();29         initDots();30     }31 32     private void initViews() {33         LayoutInflater inflater = LayoutInflater.from(this);34 35         views = new ArrayList<View>();36         views.add(inflater.inflate(R.layout.one, null));37         views.add(inflater.inflate(R.layout.two, null));38         views.add(inflater.inflate(R.layout.three, null));39 40         vpAdapter = new ViewPagerAdapter(views, this);41         vp = (ViewPager) findViewById(R.id.viewpager);42         vp.setAdapter(vpAdapter);43         // 下标从0开始,所以第三个页面是get(2)。44         start_btn = (Button) views.get(2).findViewById(R.id.start_btn);45         start_btn.setOnClickListener(new OnClickListener() {46             @Override47             public void onClick(View arg0) {48                 Intent i = new Intent(Guide.this, MainActivity.class);49                 startActivity(i);50                 finish();51             }52         });53         vp.setOnPageChangeListener(this);54     }55 56     /** 循环设置点 */57     private void initDots() {58         dots = new ImageView[views.size()];59         for (int i = 0; i < views.size(); i++) {60             dots[i] = (ImageView) findViewById(ids[i]);61         }62     }63 64     @Override  /** 滑动状态改变的时候 */65     public void onPageScrollStateChanged(int arg0) {66         // TODO Auto-generated method stub67     }68 69     @Override  /** 当页面被滑动时候调用 */70     public void onPageScrolled(int arg0, float arg1, int arg2) {71         // TODO Auto-generated method stub72     }73 74     @Override  /** 当前新的页面被选中时调用 */75     public void onPageSelected(int arg0) {76         for (int i = 0; i < ids.length; i++) {77             if (arg0 == i) {78                 // 亮点79                 dots[i].setImageResource(R.drawable.login_point_selected);80             } else {81                 // 暗点82                 dots[i].setImageResource(R.drawable.login_point);83             }84         }85     }86 87 }
 1 <?xml version="1.0" encoding="utf-8"?> 2 <RelativeLayout xmlns:android="http://schemas.android.com/apk/res/android" 3     android:layout_width="match_parent" 4     android:layout_height="match_parent" > 5  6     <android.support.v4.view.ViewPager 7         android:id="@+id/viewpager" 8         android:layout_width="fill_parent" 9         android:layout_height="fill_parent"10         android:background="#00000000" >11     </android.support.v4.view.ViewPager>12 13     <!-- 底部三个点 -->14     <LinearLayout15         android:id="@+id/ll"16         android:layout_width="fill_parent"17         android:layout_height="wrap_content"18         android:layout_alignParentBottom="true"19         android:gravity="center_horizontal"20         android:orientation="horizontal" >21         <!-- 选中点 -->22         <ImageView23             android:id="@+id/iv1"24             android:layout_width="wrap_content"25             android:layout_height="wrap_content"26             android:src="@drawable/login_point_selected" />27         <!-- 未选中点 -->28         <ImageView29             android:id="@+id/iv2"30             android:layout_width="wrap_content"31             android:layout_height="wrap_content"32             android:src="@drawable/login_point" />33         <!-- 未选中点 -->34         <ImageView35             android:id="@+id/iv3"36             android:layout_width="wrap_content"37             android:layout_height="wrap_content"38             android:src="@drawable/login_point" />39     </LinearLayout>40 41 </RelativeLayout>

 

DEMO下载:http://pan.baidu.com/s/1i3vHoLv

Android ViewPager欢迎页+引导页+进入首页