android - 如何实现Fragment左右无限滑动功能?
问题描述
上面那张图是智联的,大概就要这样一个效果
昨天想了半天,简单的实现了这个效果github-有图有真相思路是用一个List保存数量有限的Fragment,adapter的getCount返回Integer.MAX_VALUE但是感觉往里传值的时候太麻烦了
请问各位有没有合适的方法实现这个效果
https://github.com/qmr777/Rec...插不了图片了。。。上面是我的实现
问题解答
回答1:这个不就是ViewPager + Fragment的实现么,只不过他要实现无限滑动的功能罢了。传值还是在不同的Fragment中传值,当然能优化成一个Fragment就更好了。
回答2:楼上正解,实际上就是一个viewPager,写一个fragmentStatePagerAdapter把你的list放进去就好,这个可以控制保存fragment的数量以及创建新的fragment之类的事情。
回答3:这个我曾经做过,实现方式就是ViewPager+Fragment,而现实内容和一些细节就是要看应用逻辑了。
回答4:我的做法是:
假设有三个fragment,分别是f1,f2,f3.那我在初始化ViewPager的PagerAdapter的时候,总共返回5个fragment。顺序是:f3,f1,f2,f3,f1。默认的currentItem为1,即为f1。然后自定义ViewPager.OnPageChangeListener,在onPageScrollStateChanged方法中,当状态为IDLE(停止时),若当前的currentItem为0,则使用setCurrentItem(4, false)。若为4,则使用setCurrentItem(1, false).
相信聪明的同学都看懂我的实现逻辑了。
相关文章:
1. css3 - css字体样式加填充色而不是背景色2. javascript - 小白求解:mac 下如何设置nodejs express的 NODE_NEV 环境变量3. Python如何考虑代码注入安全?4. html5 - 目前 公司App 嵌入H5页面 做个 手机支付功能 没有做过 所以 请求各位有经验的 给个思路5. css3中translate(-50%,-50%)对 transform-origin的奇葩影响?6. 安装sublime text 3 控制台的时候出现这个报错怎么办?7. 前端 - 请教一下CSS3中translateZ和rotateY书写顺序的问题8. javascript - 请问一下react-native 布局的时候,尺寸的大小是如何确定的呢?9. html5 - vue-cli 装好了 新建项目的好了,找不到项目是怎么回事?10. javascript - jQuery中live事件在移动微信端下没有效果;代码如下