zoukankan      html  css  js  c++  java
  • 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     @Override
    32     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     @Override
    25     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             @Override
    47             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 stub
    67     }
    68 
    69     @Override  /** 当页面被滑动时候调用 */
    70     public void onPageScrolled(int arg0, float arg1, int arg2) {
    71         // TODO Auto-generated method stub
    72     }
    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     <LinearLayout
    15         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         <ImageView
    23             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         <ImageView
    29             android:id="@+id/iv2"
    30             android:layout_width="wrap_content"
    31             android:layout_height="wrap_content"
    32             android:src="@drawable/login_point" />
    33         <!-- 未选中点 -->
    34         <ImageView
    35             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

  • 相关阅读:
    python后端项目编码规范检查——pre-commit的使用
    centos7安装docker-compose
    python使用pandas将MySQL表数据写入Excel表格
    Sublime Text3中隐藏了菜单,怎么显示出来?
    Docker学习篇
    服务端|性能测试入门指南 (慎入: 6000 字长文)
    登录界面测试用例设计
    Date与String的转换,Date的加减计算(前一小时,前一个月、、、)
    关于SQL分页计算公式
    Java
  • 原文地址:https://www.cnblogs.com/androidsj/p/3995558.html
Copyright © 2011-2022 走看看