Android中ViewPager的使用

我们在一个apk中第一次开始的时候,会有一个guide界面,,一般使用ViewPager来完成。

布局文件如下:

==”match_parent” ><android.support.v4.view.ViewPager=”match_parent” ></android.support.v4.view.ViewPager><Button=====”gone” /></RelativeLayout>

这就是一个想到Activity GuideActivity.java

package com.xlg.news;import java.util.ArrayList;import java.util.List;import com.xlg.news.adapters.WelcomeViewPagerAdapter;import com.xuliugen.newsclient.R;import android.app.Activity;import android.content.Intent;import android.opengl.Visibility;import android.os.Bundle;import android.support.v4.view.ViewPager;import android.support.v4.view.ViewPager.OnPageChangeListener;import android.view.View;import android.view.View.OnClickListener;import android.widget.Button;import android.widget.ImageView;{private ViewPager guideViewPager;private Button guideButton;(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.guide_activity);guideViewPager = (ViewPager) this.findViewById(R.id.guide_viewpager);guideButton = (Button) this.findViewById(R.id.guide_button);//获取图片ImageView资源final List<ImageView> imageViewsList = initData();WelcomeViewPagerAdapter viewPagerAdapter = new WelcomeViewPagerAdapter(GuideActivity.this,imageViewsList);guideViewPager.setAdapter(viewPagerAdapter);/*** 设置guide ViewPager滑动的时候的监听事件*/guideViewPager.setOnPageChangeListener(new OnPageChangeListener() {/*** 已经选中某一页的时候*/(int position) {//已经到了最后一页if(position == imageViewsList.size()-1){guideButton.setVisibility(View.VISIBLE);guideButton.setOnClickListener(new OnClickListener() {(View v) {//进入最后一页设置向导页,点击按钮完成功能}});}else{guideButton.setVisibility(View.GONE);}}/**** 在页面的滑动过程中*/(int position, float arg1, int arg2) {}/**** 滑动状态发生改变的状态*/(int position) {}});}private List<ImageView> initData() {List<ImageView> imageViewsList = new ArrayList<ImageView>();// 添加图片控件ImageView imageView1 = new ImageView(getApplicationContext());imageView1.setBackgroundResource(R.drawable.guide_image1);ImageView imageView2 = new ImageView(getApplicationContext());imageView2.setBackgroundResource(R.drawable.guide_image2);ImageView imageView3 = new ImageView(getApplicationContext());imageView3.setBackgroundResource(R.drawable.guide_image3);imageViewsList.add(imageView1);imageViewsList.add(imageView2);imageViewsList.add(imageView3);return imageViewsList;}}

其中的适配器如下:

package com.xlg.news.adapters;import java.util.List;import android.content.Context;import android.support.v4.view.PagerAdapter;import android.view.View;import android.view.ViewGroup;import android.widget.ImageView;/** * 第一次启动页面的ViewPager适配器 * @author xuliugen */{private Context mContext;private List<ImageView> mImageViewsList;public WelcomeViewPagerAdapter(Context context,List<ImageView> imageViewsList) {mContext = context;mImageViewsList = imageViewsList;}() {return mImageViewsList.size();}(View view, Object object) {return view == object;}/*** 给制定的viewpager添加一个view的方法*/@Overridepublic Object instantiateItem(ViewGroup container, int position) {//添加一个imageViewcontainer.addView(mImageViewsList.get(position));return mImageViewsList.get(position);}/*** 给制定的viewpager移除一个view的方法*/(ViewGroup container, int position, Object object) {container.removeView((View)object);}}

世上没有绝望的处境,只有对处境绝望的人。

Android中ViewPager的使用

相关文章:

你感兴趣的文章:

标签云: