RecyclerView:PagerSnapHelper讓你體驗視頻上下無縫滑動播放

前言

RecyclerView在24.2.0版本中新增了SnapHelper這個輔助類,用于輔助RecyclerView在滾動結(jié)束時將Item對齊到某個位置。例如列表橫向,縱向滑動時,很多時候不會讓列表滑到任意位置,而是會有一定的規(guī)則限制,這時候就可以通過SnapHelper來定義對齊規(guī)則了。

SnapHelper是一個抽象類,官方提供了一個LinearSnapHelper的子類,可以讓RecyclerView滾動停止時相應的Item停留中間位置。25.1.0版本中官方又提供了一個PagerSnapHelper的子類,可以使RecyclerView像ViewPager一樣的效果,一次只能滑一頁,而且居中顯示。

ListView/RecyclerView滾動事件監(jiān)聽


1.onScrollStateChanged 用于監(jiān)聽ListView/RecyclerView滑動狀態(tài)的變化

2.onScroll 用于監(jiān)聽ListView/RecyclerView屏幕滾動

3.scrollVerticallyBy用于監(jiān)聽ListView/RecyclerView屏幕滾動方向


?? onScrollStateChanged

/**

? ? * OnScrollListener.SCROLL_STATE_FLING; //屏幕處于甩動狀態(tài)

? ? ? OnScrollListener.SCROLL_STATE_IDLE; //停止滑動狀態(tài)

? ? OnScrollListener.SCROLL_STATE_TOUCH_SCROLL;// 手指接觸狀態(tài)

*@paramstate

? ? */

@Override

publicvoidonScrollStateChanged(intstate){

switch(state) {

caseRecyclerView.SCROLL_STATE_IDLE:

break;

? ? ? ? }

super.onScrollStateChanged(state);

? ? }

?scrollVerticallyBy:y軸滾動

@Override

publicintscrollVerticallyBy(intdy, RecyclerView.Recycler recycler, RecyclerView.State state){

this.mDrift = dy;

returnsuper.scrollVerticallyBy(dy, recycler, state);

? ? }

mDrift判斷移動方向:mDrift>0向上移動,mDrift<0向下移動。

OnChildAttachStateChangeListener


實現(xiàn)這個接口重寫onChildViewAttachedToWindow方法,在ListView/RecyclerView中,當Item添加進來了 調(diào)用這個方法。

onChildViewDetachedFromWindow Item退出調(diào)用這個方法。



直接看效果:


x向上滑動



向下滑動




代碼:https://github.com/yangxiansheng123/FFmpegPlayVideo



個人一般喜歡在博客發(fā)表文章,大家喜歡的話,歡迎關(guān)注我的博客:https://blog.csdn.net/u014133119

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

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

  • 我幸福于, 自己襁褓之時就坐過火車, 去了遙遠卻豪邁的東北外婆家; 12歲時就一個人坐長途大巴, 去無錫找在打工的...
    佴茈玖玖閱讀 244評論 0 0
  • 寫下一段話 又刪了 怕你說我無病呻吟 怕你說我矯揉做作 其實都沒有 我只是與生活握手言歡 我只是與夢想談笑流年 就...
    靜待花開芬芳來閱讀 150評論 0 0
  • 荼蘼共六集,每集大概一個半小時,被我兩天擠了點時間看完了。 如薇和湯有顏本來已經(jīng)說好去上海發(fā)展,好不...
    時間的note閱讀 980評論 0 2

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