package com.xinyan.personal.ui.activity;

import android.content.Intent;

import android.gesture.GestureUtils;

import android.os.Bundle;

import android.os.CountDownTimer;

import android.support.annotation.Nullable;

import android.support.v4.view.ViewPager;

import android.view.View;

import android.widget.ImageView;

import android.widget.TextView;

import com.xinyan.personal.MainActivity;

import com.xinyan.personal.R;

import com.xinyan.personal.adapter.GuideAdapter;

import com.xinyan.personal.util.SPUtils;

import com.xinyan.personal.util.UiUtil;

import java.util.ArrayList;

import java.util.List;

/**

* 引导页

* Created by zst on 2017/8/2.

*/

public class GuideActivity extends BaseActivity implements ViewPager.OnPageChangeListener, View.OnClickListener{

private ViewPager vp_guide;

private TextView tv_skip;

private TextView tv_begin;

private ImageView iv_dot_0;

private ImageView iv_dot_1;

private ImageView iv_dot_2;

@Override

protected void onCreate(@Nullable Bundle savedInstanceState) {

super.onCreate(savedInstanceState);

setContentView(R.layout.activity_guide);

vp_guide = (ViewPager) findViewById(R.id.vp_guide);

tv_skip = (TextView) findViewById(R.id.tv_skip);

tv_begin = (TextView) findViewById(R.id.tv_begin);

iv_dot_0 = (ImageView) findViewById(R.id.iv_dot_0);

iv_dot_1 = (ImageView) findViewById(R.id.iv_dot_1);

iv_dot_2 = (ImageView) findViewById(R.id.iv_dot_2);

tv_skip.setOnClickListener(this);

tv_begin.setOnClickListener(this);

initBanner();

countDownTimer();

}

@Override

public void onClick(View view) {

switch (view.getId()) {

case R.id.tv_begin:

SPUtils.setParam(GuideActivity.this, SPUtils.GUIDE_STATUS, true);

startActivity(new Intent(GuideActivity.this, MainActivity.class));

finish();

break;

case R.id.tv_skip:

SPUtils.setParam(GuideActivity.this, SPUtils.GUIDE_STATUS, true);

startActivity(new Intent(GuideActivity.this, MainActivity.class));

finish();

break;

}

}

//初始化三张引导页

private void initBanner() {

List images = new ArrayList<>();

images.add(R.drawable.pic_guide_0);

images.add(R.drawable.pic_guide_1);

images.add(R.drawable.pic_guide_2);

GuideAdapter guideAdapter = new GuideAdapter(GuideActivity.this, images);

vp_guide.setAdapter(guideAdapter);

vp_guide.addOnPageChangeListener(this);

}

@Override

public void onPageScrolled(int position, float positionOffset, int positionOffsetPixels) {

}

@Override

public void onPageSelected(int position) {

setDefalutDot();

if(position == 0) {

iv_dot_0.setImageResource(R.drawable.ic_ad_dot_check);

}

if(position == 1) {

iv_dot_1.setImageResource(R.drawable.ic_ad_dot_check);

}

if(position == 2) {

iv_dot_2.setImageResource(R.drawable.ic_ad_dot_check);

tv_begin.setVisibility(View.VISIBLE);

}

}

@Override

public void onPageScrollStateChanged(int state) {

}

//设置默认的dot

private void setDefalutDot() {

tv_begin.setVisibility(View.GONE);

iv_dot_0.setImageResource(R.drawable.ic_ad_dot_default);

iv_dot_1.setImageResource(R.drawable.ic_ad_dot_default);

iv_dot_2.setImageResource(R.drawable.ic_ad_dot_default);

}

/**

* 5秒倒计时;

*/

public void countDownTimer() {

CountDownTimer timer = new CountDownTimer(5000, 1000) {

@Override

public void onTick(long millisUntilFinished) {

tv_skip.setText("跳过" + millisUntilFinished / 1000);

tv_skip.setEnabled(false);

}

@Override

public void onFinish() {

tv_skip.setText("跳过");

tv_skip.setEnabled(true);

}

};

timer.start();

}

}

activity_guide.xml

xmlns:app="http://schemas.android.com/apk/res-auto"

android:layout_width="match_parent" android:layout_height="match_parent"

android:background="@color/bg_efeff4"

android:orientation="vertical">

android:layout_width="match_parent"

android:layout_height="match_parent">

android:id="@+id/vp_guide"

android:layout_width="match_parent"

android:layout_height="match_parent"/>

android:layout_width="wrap_content"

android:layout_height="wrap_content"

android:layout_alignParentBottom="true"

android:layout_centerHorizontal="true"

android:layout_marginBottom="20dp"

android:orientation="vertical">

android:id="@+id/tv_begin"

android:layout_width="wrap_content"

android:layout_height="wrap_content"

android:layout_gravity="center_horizontal"

android:background="@drawable/shape_btn_guide_use"

android:text="申请试用"

android:textColor="@color/white"

android:visibility="gone"/>

android:layout_width="wrap_content"

android:layout_height="wrap_content"

android:layout_gravity="center_horizontal"

android:layout_marginTop="30dp">

android:id="@+id/iv_dot_0"

android:layout_width="wrap_content"

android:layout_height="wrap_content"

android:src="@drawable/ic_ad_dot_check"/>

android:id="@+id/iv_dot_1"

android:layout_width="wrap_content"

android:layout_height="wrap_content"

android:layout_marginLeft="10dp"

android:src="@drawable/ic_ad_dot_default"/>

android:id="@+id/iv_dot_2"

android:layout_width="wrap_content"

android:layout_height="wrap_content"

android:layout_marginLeft="10dp"

android:src="@drawable/ic_ad_dot_default"/>

android:id="@+id/tv_skip"

android:layout_width="wrap_content"

android:layout_height="wrap_content"

android:layout_alignParentRight="true"

android:background="@drawable/shape_btn_guide_second"

android:layout_margin="20dp"

android:paddingTop="5dp"

android:paddingBottom="5dp"

android:paddingLeft="10dp"

android:paddingRight="10dp"

android:clickable="false"

android:textSize="11sp"

android:text="跳过 5"

android:textColor="@color/white"/>

GuideAdapter.java

package com.xinyan.personal.adapter;

import android.content.Context;

import android.content.Intent;

import android.support.v4.view.PagerAdapter;

import android.support.v4.view.ViewPager;

import android.view.LayoutInflater;

import android.view.View;

import android.view.ViewGroup;

import android.widget.BaseAdapter;

import android.widget.ImageView;

import android.widget.LinearLayout;

import android.widget.TextView;

import com.bumptech.glide.Glide;

import com.xinyan.personal.R;

import com.xinyan.personal.httpManager.response.NoticeListResponse;

import com.xinyan.personal.ui.activity.MsgDetailActivity;

import java.util.List;

import java.util.Map;

/**

* 引导页配器

* Created by zst on 2017/8/2.

*/

public class GuideAdapter extends PagerAdapter {

Context context;

List viewLists;

public GuideAdapter(Context context, List lists) {

this.viewLists = lists;

this.context = context;

}

@Override

public int getCount() { //获得size

return viewLists.size();

}

@Override

public boolean isViewFromObject(View view, Object object) {

return view == object;

}

@Override

public void destroyItem(ViewGroup view, int position, Object object) { //销毁Item

}

@Override

public Object instantiateItem(ViewGroup view, int position){ //实例化Item

ImageView imageView = new ImageView(context);

ViewGroup.LayoutParams params = new ViewGroup.LayoutParams(

ViewPager.LayoutParams.MATCH_PARENT,ViewPager.LayoutParams.MATCH_PARENT);

imageView.setLayoutParams(params);

imageView.setScaleType(ImageView.ScaleType.CENTER);

Glide.with(context)

.load(viewLists.get(position))

.into(imageView);

view.addView(imageView);

return imageView;

}

}

Logo

为开发者提供学习成长、分享交流、生态实践、资源工具等服务,帮助开发者快速成长。

更多推荐