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. javascript - jquery怎么給select option一個點擊時觸發的事件,如圖 如果選擇自定義觸發一個時間?2. java - android代碼重構:如何把app設置里的頭像UI做成通用的?3. 想找個php大神仿個網站。4. javascript - 怎樣限制同一個瀏覽器不能登錄兩個賬號5. java - 新手做一個安卓視頻播放器,想實現一個進度條,按鈕那種在視頻下方懸浮的功能,不知道思路!6. css3 - Typecho 后臺部分表單按鈕在 Chrome 下出現靈異動畫問題,求解決7. javascript - angular和jquery都用到了$符號,一起用會不會沖突?8. nginx配置server模塊的問題9. 如何將行內塊元素的內容垂直水平兩個方向居中?10. mysql優化 - 關于mysql分區
