android单向无限循环的轮播图效果。
2015-11-02 17:48
716 查看
在实际应用中 总会用到轮播图的效果。当然 android的话很多情况下都是通过viewpager实现的。但是通过使用发现,它的轮播效果是这样的 从最后一个切回回第一个时是重新跳转到第一个来实现的。这样效果不是很理想。那么如何让他在最后一张时还是向右滑动切换回第一张呢。最常用的方法是最大值法。就是在适配器中将参数设置成最大值。让他一直找不到边界,自然就一直向右切换了。如下段代码
private class MyPagerAdapter extends PagerAdapter {@Overridepublic void destroyItem(View container, int position, Object object) {// TODO Auto-generated method stub// position %= imageViewsList.size();//((ViewPag.er)container).removeView((View)object);// ((ViewPager)container).removeView(imageViewsList.get(position));这里最好不要用这个方法 会报异常}@Overridepublic Object instantiateItem(View container, int position) {position %= imageViewsList.size();if (position < 0){position = imageViewsList.size() + position;}ImageView imageView = imageViewsList.get(position);ViewParent vp = imageView.getParent();if (vp != null){ViewGroup parent = (ViewGroup)vp;parent.removeView(imageView);}// ((ViewPager)container).removeView(imageViewsList.get(position));imageLoader.displayImage(imageView.getTag() + "", imageView);((ViewPager)container).addView(imageViewsList.get(position));return imageViewsList.get(position);}@Overridepublic int getCount() {// TODO Auto-generated method stubreturn Integer.MAX_VALUE;}@Overridepublic boolean isViewFromObject(View arg0, Object arg1) {// TODO Auto-generated method stubreturn arg0 == arg1;}@Overridepublic void restoreState(Parcelable arg0, ClassLoader arg1) {// TODO Auto-generated method stub}@Overridepublic Parcelable saveState() {// TODO Auto-generated method stubreturn null;}@Overridepublic void startUpdate(View arg0) {// TODO Auto-generated method stub}@Overridepublic void finishUpdate(View arg0) {// TODO Auto-generated method stub}}
相关文章推荐
- Android内存优化之OOM
- android四大组件学习之-Service的使用
- Android性能优化典范 - 第3季
- Android性能优化典范 - 第2季
- Android-01 Android的Message机制
- Android性能优化典范
- Android Training - 管理应用的内存
- Android Training - 代码性能优化小技巧
- Android Training - 提升布局文件的性能(Lesson 4 - 使用ViewHolder来提升ListView的性能)
- Android Studio 利用Gradle来混淆代码
- 关于android ListView 9个重要属性
- Android Training - 提升布局文件的性能(Lesson 3 - 使用viewStub按需载入视图)
- 对android&安卓下jni的单步调试
- Android Training - 提升布局文件的性能(Lesson 2 - 使用include标签重用Layout)
- Android屏幕适配
- Android Training - 提升布局文件的性能(Lesson 1 - 优化布局的层级)
- android 全局获取Context的技巧 《第一行代码》
- Android输入邮箱号码时响应选择效果
- Android开发最佳实践
- android 获取手机sim序列号