android ViewPager+FragmentStatePagerAdapter无限循环FragmentStatePagerAdapter
2015-06-03 19:28
507 查看
<span style="font-family: Arial, Helvetica, sans-serif; background-color: rgb(255, 255, 255);">使用ViewPager 和FragmentStatePagerAdapter做翻页效果的话,当从最后一页换到第一页的时候,动画效果会从最后一页倒滑到第一页。</span>
下面介绍一种方法,可以让ViewPager无限的翻页。
代码如下:
<pre name="code" class="html">public class MyFragmentStatePagerAdapter extends FragmentStatePagerAdapter{ public MyFragmentStatePagerAdapter(FragmentManager fm) { super(fm); // TODO...... } @Override public Fragment getItem(int index) { // TODO...... return new Fragment(); } @Override public int getCount() { return Integer.MAX_VALUE; } @Override public Object instantiateItem(ViewGroup container, int position) { return super.instantiateItem(container,position % mRealCount); } @Override public void setPrimaryItem(ViewGroup container, int position, Object object) { super.setPrimaryItem(container,position % <span style="font-family: Arial, Helvetica, sans-serif;">mRealCount</span><span style="font-family: Arial, Helvetica, sans-serif;">, object);</span> } @Override public void destroyItem(ViewGroup container, int position, Object object) { super.destroyItem(container, position % mRealCount, object); } }
主要注意这些:
1、getConunt的时候,返回Integer.MAX_VALUE。
2、后面的三个函数,需要把position的值做转换,转成实际的索引。
3、和平常使用一下,getItem返回一个Fragment,通常需要在这里为Fragment设置数据。
接下来的事情就很简单了,把这个Adapter设置给ViewPager, 并调用ViewPager.setCurrentItem(Integer.MAX_VALUE>>1);
这样就可以左右无限滑动 了。
相关文章推荐
- Android如何设置横竖屏
- Android 应用性能优化(三) 多核下的多线程计算
- Android 4.4 KitKat NotificationManagerService使用具体解释与原理分析(一)__使用具体解释
- Android更换皮肤解决方案
- Android 自定义view 的绘制时机 问题
- Android手机客户端与服务器之间的通信、Android手机客户端通过服务器与Android手机客户端之间的通信---------阿冬专栏!!!
- 浅析Android Camera开发中的三个尺寸和三种变形 (贡献一个自适配Picturesize和Previewsize的工具类)
- Android学习资源
- Android 强制横屏或竖屏注意事项及onConfigurationChanged的使用
- android px转换为dip/dp
- Android中的volley_5_字节数组缓冲池ByteArrayPool 和使用缓冲池技术的自定义的PoolingByteArrayOutputStream
- Android开发命名规范
- Android Handler的使用
- 控制android 编译源码生成odex .
- Android的ViewAnimator及其子类ViewSwitcher-android学习之旅(三十三)
- Android的ViewAnimator及其子类ViewSwitcher-android学习之旅(三十三)
- Android的ViewAnimator及其子类ViewSwitcher-android学习之旅(三十三)
- 引入第三方jar包,编译无错,运行出错。
- Android Studio怎样提示函数使用方法
- Android 上传中文到服务器时的乱码问题