当前位置: 首页 > news >正文

ViewPager结合view无限滑动

 

使用viewPager进无限滑动,这里的实现是在适配器里面进行,当然在外头使用滑动监听也行。 


import android.support.v4.view.PagerAdapter;
import android.view.View;
import android.view.ViewGroup;

import java.util.ArrayList;

public class ReadViewPagerAdapter extends PagerAdapter 
{
private ArrayList<View> viewArrayList; public ReadViewPagerAdapter(ArrayList<View> viewArrayList)
{
this.viewArrayList = viewArrayList; } @Override public int getCount()
{
return Integer.MAX_VALUE;//实现无限循环播放,这里使用一个极端的数字 } @Override public boolean isViewFromObject(View view, Object object)
{
return view == object; } @Override public Object instantiateItem(ViewGroup container, int position)
{
position %= viewArrayList.size(); //防止数组越界 if (position < 0)
{ position
= viewArrayList.size() + position; } View view = viewArrayList.get(position); //如果这个view已经被加入到viewPager中,那么就将它移除,不然可能会出现一个view被重复添加而出现错误
if (view.getParent() != null) { ViewGroup viewGroup = (ViewGroup) view.getParent(); viewGroup.removeView(view); } container.addView(view); return view; } @Override public void destroyItem(ViewGroup container, int position, Object object)
{
// container.removeView(viewArrayList.get(position));//删除页卡,这个地方不能对其进行重写 } }

 以上便实现了对viewPager里面的view进行无限循环切换了

转载于:https://www.cnblogs.com/tangZH/p/6516474.html

相关文章:

  • 30个php操作redis常用方法代码例子
  • 替换值
  • git简易教程
  • java的PDF纵横向打印
  • 微信三方登录相关(Swift)
  • 大数加法模板
  • System类
  • PyOdps 0.4版本发布,从一个故事说起
  • 电话面试总结
  • link visited hover actived顺序
  • Log4Net 在ASP.NET WebForm 和 MVC的全局配置
  • 也谈谈Unity的transform使用
  • 多个文本框录入,使用回车键替找Tab键
  • debian8 更新系统内核
  • 查询SQL存储过程创建时间
  • [rust! #004] [译] Rust 的内置 Traits, 使用场景, 方式, 和原因
  • 10个最佳ES6特性 ES7与ES8的特性
  • CentOS7 安装JDK
  • Docker下部署自己的LNMP工作环境
  • jQuery(一)
  • Js基础知识(四) - js运行原理与机制
  • js中forEach回调同异步问题
  • mongo索引构建
  • Node.js 新计划:使用 V8 snapshot 将启动速度提升 8 倍
  • PHP的Ev教程三(Periodic watcher)
  • React as a UI Runtime(五、列表)
  • Vim Clutch | 面向脚踏板编程……
  • Vue--数据传输
  • 爱情 北京女病人
  • 等保2.0 | 几维安全发布等保检测、等保加固专版 加速企业等保合规
  • 高程读书笔记 第六章 面向对象程序设计
  • 湖南卫视:中国白领因网络偷菜成当代最寂寞的人?
  • 计算机常识 - 收藏集 - 掘金
  • 马上搞懂 GeoJSON
  • 体验javascript之美-第五课 匿名函数自执行和闭包是一回事儿吗?
  • 学习ES6 变量的解构赋值
  • 用jquery写贪吃蛇
  • 阿里云ACE认证之理解CDN技术
  • 如何通过报表单元格右键控制报表跳转到不同链接地址 ...
  • ​ArcGIS Pro 如何批量删除字段
  • ​MPV,汽车产品里一个特殊品类的进化过程
  • ​决定德拉瓦州地区版图的关键历史事件
  • (delphi11最新学习资料) Object Pascal 学习笔记---第2章第五节(日期和时间)
  • (M)unity2D敌人的创建、人物属性设置,遇敌掉血
  • (二)基于wpr_simulation 的Ros机器人运动控制,gazebo仿真
  • (二十四)Flask之flask-session组件
  • (附表设计)不是我吹!超级全面的权限系统设计方案面世了
  • (更新)A股上市公司华证ESG评级得分稳健性校验ESG得分年均值中位数(2009-2023年.12)
  • (一)【Jmeter】JDK及Jmeter的安装部署及简单配置
  • (一)Java算法:二分查找
  • (转载)CentOS查看系统信息|CentOS查看命令
  • (轉貼) UML中文FAQ (OO) (UML)
  • .axf 转化 .bin文件 的方法
  • .form文件_一篇文章学会文件上传
  • .net core 连接数据库,通过数据库生成Modell