Android开发之ViewPager的简单使用

学向勤中得,萤窗万卷书。这篇文章主要讲述Android开发之ViewPager的简单使用相关的知识,希望能为你提供帮助。
  ViewPager是V4包中的,如果你的编译器敲不出ViewPager,那么你就需要添加,看下面:
第一步:点击+号

Android开发之ViewPager的简单使用

文章图片

第二步:选择第一个Library
Android开发之ViewPager的简单使用

文章图片

第三步:添加这个包:
Android开发之ViewPager的简单使用

文章图片

 
  然后点击ok--> ok就搞定了,编译器会从新进行预编译。
 
下面就是重点了,我们先看布局文件:
1 < android.support.v4.view.ViewPager 2android:id="@+id/ViewPager" 3android:layout_width="match_parent" 4android:layout_height="match_parent" 5/>

ps:果然敲的时候有自动提示,说明你添加成功了。
 
然后是代码:
1 public class MainActivity extends Activity { 2 3private ViewPager viewPager; 4private ArrayList< ImageView> mImageViewList; 5private int[] mImagerIds = new int[]{R.drawable.guide_1,R.drawable.guide_2,R.drawable.guide_3}; 6 7@Override 8protected void onCreate(Bundle savedInstanceState) { 9super.onCreate(savedInstanceState); 10setContentView(R.layout.activity_main); 11 12viewPager = (ViewPager) findViewById(R.id.ViewPager); 13initData(); 14ViewPagerAdapter adapter = new ViewPagerAdapter(); 15viewPager.setAdapter(adapter); 16} 17 18 19 20public void initData(){ 21mImageViewList = new ArrayList< > (); 22//把所有的ImageView都添加都mImageViewList的集合中 23for (int i=0; i< mImagerIds.length; i++){ 24//新建一个ImgeView将图片资源添加到ImageView中 25ImageView imageView = new ImageView(this); 26imageView.setBackgroundResource(mImagerIds[i]); 27//将ImageView添加到mImageViewList的集合中 28mImageViewList.add(imageView); 29} 30 31} 32 33class ViewPagerAdapter extends PagerAdapter { 34 35//item的个数 36@Override 37public int getCount() { 38return mImageViewList.size(); 39} 40 41@Override 42public boolean isViewFromObject(View view, Object object) { 43return view==object; 44} 45 46//初始化item布局 47@Override 48public Object instantiateItem(ViewGroup container, int position) { 49ImageView imageView = mImageViewList.get(position); 50container.addView(imageView); //将imageView添加进来 51return imageView; //将imageView返回 52} 53 54//销毁Item 55@Override 56public void destroyItem(ViewGroup container, int position, Object object) { 57//super.destroyItem(container, position, object); //如果用这个一出Item的话滑到最后一个会报错 58container.removeView((View)object); 59} 60} 61 }

思路:先将图片资源放到一个int[]中,然后在for循环里面循环创建ImageView设置图片资源,再把ImageView添加到ArrayList集合中,然后在instantiateItem()方法中初始化item,把ImageView集合中的ImageView添加到ViewGroup中,然后返回ImageView,销毁ImageView的时候不能用super.destroyItem(container, position, object); ,这个会导致滑到最后一个ImageView时报错。
【Android开发之ViewPager的简单使用】 

    推荐阅读