1.首先,新建一个Android项目,项目名称为ViewPagerTest,接着打开项目默认创建的activity_main.xml布局文件,进行修改:
activity_main.xml代码如下:
<RelativeLayout xmlns:android="/apk/res/android"xmlns:tools="/tools"android:layout_width="match_parent"android:layout_height="match_parent" ><android.support.v4.view.ViewPagerandroid:id="@+id/viewPager"android:layout_width="match_parent"android:layout_height="wrap_content" /></RelativeLayout>
其中,这里需要android-support-v4.jar包,如果没有,需要导入这个jar包后才能用ViewPager这个控件。
2.接着,再新建五个页面,用来显示图片,这里只附上一个布局文件(因为都是一样的,只是图片不一样而已),viewpager_view1代码如下:
<?xml version="1.0" encoding="utf-8"?><LinearLayout xmlns:android="/apk/res/android"android:layout_width="match_parent"android:layout_height="match_parent"android:orientation="vertical" ><ImageView android:layout_width="match_parent"android:layout_height="match_parent"android:src="@drawable/mm1"/></LinearLayout>
3.接着打开MainActivity.java文件,通过设置适配器将上面那五个显示图片的页面放置到ViewPager里面,从此可以滑动图片,代码如下:
package com.android.viewpagertest;import java.util.ArrayList;import android.os.Bundle;import android.support.v4.view.PagerAdapter;import android.support.v4.view.ViewPager;import android.view.LayoutInflater;import android.view.View;import android.app.Activity;public class MainActivity extends Activity {private ViewPager viewPager;// 声明一个ViewPagerprivate ArrayList<View> pageView;// 声明一个存放视图的集合@Overrideprotected void onCreate(Bundle savedInstanceState) {super.onCreate(savedInstanceState);setContentView(R.layout.activity_main);viewPager = (ViewPager) findViewById(R.id.viewPager);// 获取布局中的ViewPager控件// 获取不同布局文件的View视图View view1 = LayoutInflater.from(MainActivity.this).inflate(R.layout.viewpager_view1, null);View view2 = LayoutInflater.from(MainActivity.this).inflate(R.layout.viewpager_view2, null);View view3 = LayoutInflater.from(MainActivity.this).inflate(R.layout.viewpager_view3, null);View view4 = LayoutInflater.from(MainActivity.this).inflate(R.layout.viewpager_view4, null);View view5 = LayoutInflater.from(MainActivity.this).inflate(R.layout.viewpager_view5, null);// 将view装入到一个集合中pageView = new ArrayList<View>();pageView.add(view1);pageView.add(view2);pageView.add(view3);pageView.add(view4);pageView.add(view5);// 数据适配器PagerAdapter mPagerAdapter = new PagerAdapter() {@Override// 获取当前窗体界面数public int getCount() {// TODO Auto-generated method stubreturn pageView.size();}@Override// 断是否由对象生成界面public boolean isViewFromObject(View arg0, Object arg1) {// TODO Auto-generated method stubreturn arg0 == arg1;}// 是从ViewGroup中移出当前Viewpublic void destroyItem(View arg0, int arg1, Object arg2) {((ViewPager) arg0).removeView(pageView.get(arg1));}// 返回一个对象,这个对象表明了PagerAdapter适配器选择哪个对象放在当前的ViewPager中public Object instantiateItem(View arg0, int arg1) {((ViewPager) arg0).addView(pageView.get(arg1));return pageView.get(arg1);}};// 绑定适配器viewPager.setAdapter(mPagerAdapter);}}
4.运行部署此项目,效果如下:
向右滑动可显示另一图片。
5.以上内容仅供大家学习参考,谢谢!