关闭

实现Android图片轮播

466人阅读 评论(0) 收藏 举报
分类:

轮播的实现

利用定时器,实现循环轮播,很简单;只需在定时器的消息里加如下代码即可:

    int count = adapter.getCount();  
    if (count > 1) { // 多于1个,才循环  
        int index = viewPager.getCurrentItem();  
        index = (index + 1) % count;  
        viewPager.setCurrentItem(index, true);  
    }  

如果想可以在滑动的时候也可以循环滑动,实现原理:
通过查阅大量的资料,我发现ViewPager自身并不支持左右无限循环的功能,不得不说,这点真是太失败了。
由于ViewPager自身不支持,我们只能自己找方法了!下面是我实现左右无限循环的方法:
用于显示的mViews,比数据源mList,多了两个节点元素(头节点0:b和尾节点5:e用于跳转)
下图的不带箭头的红线,是mViews根据mList初始化的情况;带箭头的红线是跳转的情况。



<script src="/js/SyntaxHighlighter/jquery.highlighter.js?v=20091222" type="text/javascript"></script>
<script src="/js/SyntaxHighlighter/highlighter.js?v=20091222" type="text/javascript"></script>


<p><textarea cols="50" rows="15" name="code" class="classname">
//增加两个view实现无线循环
 @Override
        public void onPageScrollStateChanged(int arg0) {
            switch (arg0) {
                case 1:
                    isAutoPlay = false;    //正在滑动的时候,不用自动播放
                    break;
                case 2:
                    isAutoPlay = true;   //滑动完毕的时候,也不用自动轮播
                    break;
                case 0:
                    if (vp.getCurrentItem() == 0) {    //view为0的时候,指向list最后一个       但它为0的时候滑到最后一个
                        vp.setCurrentItem(topStoriesEntities.size(), false);     //<span class="number"><span class="keyword"><span class="comment">不显示跳转过程的动画  
</span></span></span>
                    } else if (vp.getCurrentItem() == topStoriesEntities.size() + 1) {    //view为list.size+1的时候指向1    最后一个的时候滑到第一个
                        vp.setCurrentItem(1, false);
                    }
                    currentItem = vp.getCurrentItem();
                    isAutoPlay = true;
                    break;
            }
        }/
</textarea> </p>

0
0
查看评论
发表评论
* 以上用户言论只代表其个人观点,不代表CSDN网站的观点或立场

Android 实现图片轮播的三种方法

Android实现图片轮播主要有以下方式,汇总一下: 一、ViewPager + PagerAdapter + Handler private class ImageAdapter extends...
  • zhoumushui
  • zhoumushui
  • 2015-10-27 10:46
  • 3458

Android之——史上最简单图片轮播广告效果实现

如今的Android开发需求越来越来多,实现效果越来越酷炫,很多Android APP都要实现PC网站上那样的图片轮播效果,那么,这些图片的轮播效果是如何实现的呢?下面,我就跟大家一起来实现这些酷炫的...
  • l1028386804
  • l1028386804
  • 2015-08-28 12:03
  • 33657

Android使用ViewPager实现图片轮播和手势滑动

ViewPager常用来实现图片的轮播,比如淘宝首页,会把一些促销的商品的图片和描述信息来回的播放,这就是典型的使用ViewPager实现的。 ViewPager属于布局管理器,允许用户通过...
  • ljw124213
  • ljw124213
  • 2016-09-24 22:33
  • 1977

Android使用ViewPager实现图片的轮播

一.概述在现在的Android项目中,首页图片轮播是随处可见的,今天我们看看如何实现,先看效果图:二.实现先给大家看看最简单的布局文件<LinearLayout xmlns:android="http...
  • Small_Lee
  • Small_Lee
  • 2016-03-02 11:24
  • 4866

Android 仿网易新闻 ViewPager 实现图片自动轮播

前言新闻 App 首页最上方一般会循环播放热点图片,如下图所示。本文主要介绍了利用 ViewPager 实现轮播图片,图片下方加上小圆点指示器标记当前位置,并利用 Timer+Handler 实现了自...
  • never_cxb
  • never_cxb
  • 2016-01-10 11:24
  • 12917

Android图片轮播效果的几种实现方法

大家在使用APP的过程中,经常会看到上部banner图片轮播的效果,那么今天我们就一起来学习一下,android中图片轮询的几种实现方法: 第一种:使用动画的方法实现:(代码繁琐) 这种发放需要:...
  • weimo1234
  • weimo1234
  • 2015-02-10 10:21
  • 2956

Android fragment中广告图片轮播效果的实现(附图 )

作者刚刚接触android小白一枚,这是本人在CSDN上写的第一篇博客。。出于写博客的目的:一也是最重要的想让像我这样的android初学者少走点弯路,本以为这个功能实现起来挺简单的,但是项目要求在f...
  • qq_36789366
  • qq_36789366
  • 2017-03-06 21:20
  • 1117

在Android studio中使用viewpager创建出图片轮播效果

1.布局: xmlns:android="http://schemas.android.com/apk/res/android" xmlns:tools="http://schemas....
  • tianyingxiaojiang
  • tianyingxiaojiang
  • 2016-03-21 09:22
  • 4552

Android高级图片滚动控件,编写3D版的图片轮播器

大家好,好久不见了,最近由于工作特别繁忙,已经有一个多月的时间没写博客了,我也是深感惭愧。那么今天的这篇既然是阔别了一个多月的文章,当然要带来更加给力点的内容了,那么话不多说,赶快进入到今天的正题吧。...
  • sinyu890807
  • sinyu890807
  • 2014-03-13 09:09
  • 39780

android 加载网络图片 实现图片轮播

最近实现这样一个功能: 网络图片实现轮播,图片可以手势缩放 这样 用到三个组件: viewpager 实现图片轮播 photoview 实现图片手势缩放的框架 bitmaputils 高效加载网络图片...
  • yangzongbin
  • yangzongbin
  • 2017-02-23 14:20
  • 209
    个人资料
    • 访问:24142次
    • 积分:824
    • 等级:
    • 排名:千里之外
    • 原创:57篇
    • 转载:13篇
    • 译文:0篇
    • 评论:3条
    最新评论