一、在布局文件中写一个ViewPager控件。
<android.support.v4.view.ViewPager android:id="@+id/mViewPager" android:layout_width="wrap_content" android:layout_height="wrap_content"> </android.support.v4.view.ViewPager>二、在代码中找到该控件。
mViewPager = (ViewPager) findViewById (R.id.mViewPager);三、新建一个类继承PagerAdapter,并重写父类的getCount()、isViewFromObject()、instantiateItem()、destoryItem()方法。
class MyAdapter extends PagerAdapter{ //显示的个数 @Override public int getCount () { return imageId.length; } //显示的view是否是当前的view @Override public boolean isViewFromObject (View view, Object object) { return view == object; } //添加条目 @Override public Object instantiateItem (ViewGroup container, int position) { Log.d (TAG, "instantiateItem: "+position); ImageView iv = new ImageView (getApplicationContext ()); iv.setImageResource (imageId[position]); //向容器中添加一个view container.addView (iv); return iv; } //销毁条目 @Override public void destroyItem (ViewGroup container, int position, Object object) { Log.d (TAG, "destroyItem: "+position); //从容器中删除一个view container.removeView ((View)object); } }四、创建MyAdapter对象。
adapter = new MyAdapter ();五、给ViewPager设置MyAdapter对象。
mViewPager.setAdapter (adapter);六、ViewPager其它常用的几个方法。
//设置当前选中页面 mViewPager.setCurrentItem (2);
//获取当前选中页面角标 int currentItem = mViewPager.getCurrentItem ();
//给ViewPager添加页面改变的监听 mViewPager.addOnPageChangeListener (mOnPageChangeListener);
//移除ViewPager页面改变的监听 //mViewPager.removeOnPageChangeListener (mOnPageChangeListener);
//清除ViewPager所有的页面监听 mViewPager.clearOnPageChangeListeners ();简单的就介绍这几个方法
七、总结
看起来很简单,长时间不用就忘记了。
Demo下载地址:点击打开链接
</div>