橫向RecyclerView加載Banner使Item居中顯示(使用LinearSnapHelper)

項(xiàng)目中做了個(gè)橫向滑動(dòng)的banner,想要實(shí)現(xiàn)主圖居中顯示,查找了下實(shí)現(xiàn)的方式,寫在此處作為記錄,如下:

一句話介紹SnapHelper: SnapHelper是RecyclerView功能的一種拓展,使RecyclerView滑動(dòng)行為類似ViewPager,無論怎么滑動(dòng)最終停留在某頁正中間。ViewPager一次只能滑動(dòng)一頁,RecyclerView+SnapHelper方式可以一次滑動(dòng)好幾頁,且最終都停留在某頁正中間。非常實(shí)用和酷炫。

SnapHelper的實(shí)現(xiàn)原理是監(jiān)聽RecyclerView.OnFlingListener中的onFling接口。LinearSnapHelper是抽象類SnapHelper的具體實(shí)現(xiàn)。



上面的效果只需下面幾行代碼即可。重點(diǎn)在于new LinearSnapHelper().attachToRecyclerView(recyclerView);

LinearLayoutManager linearLayoutManager =newLinearLayoutManager(getContext(), LinearLayoutManager.HORIZONTAL,false);recyclerView.setLayoutManager(linearLayoutManager);

newLinearSnapHelper().attachToRecyclerView(recyclerView);

具體詳解請(qǐng)轉(zhuǎn)至:http://www.itdecent.cn/p/d8f0842f5f06?utm_campaign=maleskine&utm_content=note&utm_medium=mobile_all_hots&utm_source=recommendation

點(diǎn)擊此處跳轉(zhuǎn):

LinearSnapHelper源碼解析(作者: 依然fantac)?

最后編輯于
?著作權(quán)歸作者所有,轉(zhuǎn)載或內(nèi)容合作請(qǐng)聯(lián)系作者
【社區(qū)內(nèi)容提示】社區(qū)部分內(nèi)容疑似由AI輔助生成,瀏覽時(shí)請(qǐng)結(jié)合常識(shí)與多方信息審慎甄別。
平臺(tái)聲明:文章內(nèi)容(如有圖片或視頻亦包括在內(nèi))由作者上傳并發(fā)布,文章內(nèi)容僅代表作者本人觀點(diǎn),簡書系信息發(fā)布平臺(tái),僅提供信息存儲(chǔ)服務(wù)。

相關(guān)閱讀更多精彩內(nèi)容

友情鏈接更多精彩內(nèi)容