目錄
什么是SnapHelper
SnapHelper是Google 在 Android 24.2.0 的support 包中添加的對RecyclerView的拓展降狠,結(jié)合RecyclerView使用胧辽,能很方便的做出一些炫酷的效果。
SnapHelper的使用方法
SnapHelper是一個抽象類 Google 內(nèi)置了兩個默認實現(xiàn)類饿敲,LinearSnapHelper和PagerSnapHelper逝变。
- LinearSnapHelper:使當前Item居中顯示增淹,常用場景是橫向的RecyclerView, 類似ViewPager效果现横,但是又可以快速滑動多個條目漓拾。
LinearLayoutManager manager = new LinearLayoutManager(getContext());
manager.setOrientation(LinearLayoutManager.VERTICAL);
mRecyclerView.setLayoutManager(manager);
LinearSnapHelper snapHelper = new LinearSnapHelper();
snapHelper.attachToRecyclerView(mRecyclerView);
- PagerSnapHelper:使RecyclerView 像ViewPager一樣的效果,每次只能滑動一頁戒祠。
LinearLayoutManager linearLayoutManager = new LinearLayoutManager(this);
linearLayoutManager.setOrientation(LinearLayoutManager.HORIZONTAL);
mRecycleview.setLayoutManager(linearLayoutManager);
PagerSnapHelper snapHelper = new PagerSnapHelper();
snapHelper.attachToRecyclerView(mRecycleview);
這里我只使用了PagerSnapHelper做了一個案例:
項目源碼:https://github.com/myml666/SnapHelperDemo