1. 程式人生 > >RecyclerView在5.0以上版本滑動不流暢(沒有慣性效果)問題的處理

RecyclerView在5.0以上版本滑動不流暢(沒有慣性效果)問題的處理

        專案中發現,RecyclerView在5.0以上版本滑動不流暢,滑動的手指一離開螢幕,列表就不動了,沒有慣性效果。調查原因,發現應該是與scroll bar的有關,據說是recyclerView 無法完美support scroll。

        在網上找了找解決方案,有人說把targetSDK改成21可以解決問題,但是並不好用。

        既然recyclerView無法完美支援scroll,那麼試著在xml佈局檔案中,在recyclerView外面再套一層scrollView,問題解決!

        好景不長,發現在一個需要上拉載入和下拉重新整理的頁面中,這個問題依然存在(重新整理元件是自己做的linearLayout,裡面維護了一個scrollView,並自己根據座標分發攔截touch事件)。猜想應該是事件衝突所致。

        發現為recyclerView設定禁止巢狀滑動

   setNestedScrollingEnabled(false);

        可以完美解決問題,具體為啥我也不清楚 尷尬

。感興趣的可以研究下android巢狀滑動機制。

         PS:設定了禁止巢狀滑動後可以不用再套一層scrollView了~~~