文章來自:Drakeet 的個(gè)人博客
在 GitHub 開源了一種新的 Header View + RecyclerView 實(shí)現(xiàn)方式凑阶,使用 CoordinatorLayout 把 header 抽離出 RecyclerView,并做到上下滑聯(lián)動(dòng)溺健,這樣 Java 層代碼就能簡(jiǎn)單和簡(jiǎn)潔很多,更便于刷新和響應(yīng)膝但,也不用寫多 item view type 邏輯荒辕。
源代碼:https://github.com/drakeet/RecyclerViewWithHeaderNewPractice
說明:
1.可以使用SmoothAppBarLayout這個(gè)第三方庫(kù),它是一個(gè)提供順滑滾動(dòng)的 AppBarLayout 補(bǔ)足庫(kù)器罐,這一個(gè)層次必須置于 RecyclerView 代碼下面梢为,也就是界面上是在 RecyclerView 的上層,這樣AppBarLayout 包裹的 header views 才能接收到點(diǎn)擊事件(其實(shí)根本原因是轰坊,RV 對(duì)于 Padding 部分也會(huì)攔截手勢(shì)所以不得不這么做)铸董。
2.如果想要列表上滑的時(shí)候,狀態(tài)欄跟隨著滑動(dòng)顯示出陰影效果肴沫,可以在?FrameLayout 外再包裹一層?android.support.design.widget.CollapsingToolbarLayout. 可以實(shí)現(xiàn)如圖效果(注意狀態(tài)欄陰影):