实现Android图片轮播
来源:互联网 发布:数字正则表达式 java 编辑:程序博客网 时间:2024/06/06 15:04
轮播的实现
利用定时器,实现循环轮播,很简单;只需在定时器的消息里加如下代码即可:
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
- Android 实现图片轮播
- 实现Android图片轮播
- Android实现图片轮播
- Android网络图片实现图片轮播
- Android实现图片轮播切换
- Android ViewPager控件实现图片轮播
- Android ViewPager控件实现图片轮播
- Android ViewPager控件实现图片轮播
- Android实现Banner图片循环轮播
- Android---flipper实现图片轮播
- android ViewFlipper实现图片轮播
- Android图片轮播的实现总结
- RollViewPager实现android图片轮播效果
- Android 图片轮播Banner的实现
- Android如何实现图片轮播
- Android ViewPager实现的图片轮播
- 实现图片轮播
- 实现图片轮播
- U3d,解析jsondata提示错误.InvalidCastException: Instance of JsonData doesn't hold an int LitJson.JsonData.
- 使用Anemometer基于pt-query-digest将MySQL慢查询可视化
- awk&sed日常用法记录
- 类别和继承的区别
- linux 常用调试命令
- 实现Android图片轮播
- 英语速成的窍门—你需要掌握这些【胶水词】
- Java基础一
- Java数字时钟
- 九度oj-1136-Number Steps
- 使用msvc编译的rustc
- 野人学Android第二弹——照片的拍摄与存储(一)
- C语言实现密码的设置及验证
- Codeforces 599B Spongebob and Joke 【水题】