RecyclerView嵌套R(shí)ecyclerView滑動(dòng)卡頓的解決方法
Android 利用RecyclerView仿淘寶訂單頁面實(shí)現(xiàn),解決RecyclerView嵌套R(shí)ecyclerView滑動(dòng)卡頓
問題:
最近在項(xiàng)目中碰到一個(gè)問題,類似于淘寶訂單頁面,由于每個(gè)訂單項(xiàng)中可能會(huì)包含多個(gè)具體的項(xiàng)目,要想實(shí)現(xiàn)這種效果,一般來說需要在RecyclerView中嵌套R(shí)ecyclerView,這樣做會(huì)導(dǎo)致,如果訂單項(xiàng)中的具體項(xiàng)目過多,超過一屏,展示效果會(huì)有卡頓現(xiàn)象,原因就是由于兩個(gè)RecyclerView的存在,使得滑動(dòng)的view滑出當(dāng)前屏幕的釋放存在沖突
思路:
Ideaqjjl 分析的很詳細(xì),我是從他的分析中得到的思路,對于Copy黨來說,最大的痛苦莫過于沒有源碼,于是整合了一下Ideaqjjl的代碼,得到了解決思路,將每一行都看作一個(gè)Item,相當(dāng)于用一個(gè)RecyclerView解決了用嵌套才能得到的結(jié)果,效果真心不錯(cuò),在此灰常感謝Ideaqjjl提供的思路及代碼
解決方式:
根據(jù)RecyclerView的分組設(shè)置,將每一行都作為一個(gè)Item,就相當(dāng)于在一個(gè)RecyclerView中添加item,這樣就可以很好的解決問題
@Override public MyViewHolder onCreateViewHolder(ViewGroup parent, int viewType) { MyViewHolder holder = new MyViewHolder(list.get(viewType).getView(mContext, parent, mIflater)); return holder; } /** * 每一個(gè)位置的item都作為單獨(dú)一項(xiàng)來設(shè)置 * viewType 設(shè)置為position * @param position * @return */ @Override public int getItemViewType(int position) { return position; }
結(jié)語
奉上git地址,有什么問題直接評論即可,歡迎指正批評,共同進(jìn)步!
以上就是本文的全部內(nèi)容,希望對大家的學(xué)習(xí)有所幫助,也希望大家多多支持腳本之家。
- RecyclerView滑動(dòng)到指定Position的方法
- Android中RecyclerView實(shí)現(xiàn)橫向滑動(dòng)代碼
- Android中RecyclerView嵌套滑動(dòng)沖突解決的代碼片段
- Android中RecyclerView 滑動(dòng)時(shí)圖片加載的優(yōu)化
- Android實(shí)現(xiàn)評論欄隨Recyclerview滑動(dòng)左右移動(dòng)
- android RecyclerView側(cè)滑菜單,滑動(dòng)刪除,長按拖拽,下拉刷新上拉加載
- Android 滑動(dòng)監(jiān)聽RecyclerView線性流+左右劃刪除+上下移動(dòng)
- Android開發(fā)中RecyclerView模仿探探左右滑動(dòng)布局功能
- Android RecyclerView滑動(dòng)刪除和拖動(dòng)排序
- Android嵌套R(shí)ecyclerView左右滑動(dòng)替代自定義view
相關(guān)文章
Android游戲開發(fā)學(xué)習(xí)①彈跳小球?qū)崿F(xiàn)方法
這篇文章主要介紹了Android游戲開發(fā)學(xué)習(xí)①彈跳小球?qū)崿F(xiàn)方法,涉及Android通過物理引擎BallThread類模擬小球運(yùn)動(dòng)的相關(guān)技巧,具有一定參考借鑒價(jià)值,需要的朋友可以參考下2015-10-10Android 應(yīng)用更換皮膚實(shí)現(xiàn)方法
本文主要介紹Android 應(yīng)用更換皮膚,Android應(yīng)用如果想更換皮膚這里幫大家整理了相關(guān)資料,有需要的小伙伴可以參考下2016-08-08android 如何設(shè)置開機(jī)后屏幕亮度默認(rèn)值為自動(dòng)調(diào)節(jié)
在第一次開機(jī)后,設(shè)置>顯示>自動(dòng)亮度調(diào)節(jié) 默認(rèn)是勾選上的,具體修改方法如下,感興趣的朋友可以嘗試操作下2013-06-06Android 快速實(shí)現(xiàn)防止網(wǎng)絡(luò)重復(fù)請求&按鈕重復(fù)點(diǎn)擊的方法
下面小編就為大家分享一篇Android 快速實(shí)現(xiàn)防止網(wǎng)絡(luò)重復(fù)請求&按鈕重復(fù)點(diǎn)擊的方法,具有很好的參考價(jià)值,希望對大家有所幫助。一起跟隨小編過來看看吧2018-01-01Android利用Canvas標(biāo)點(diǎn)畫線并加入位移動(dòng)畫(1)
這篇文章主要為大家詳細(xì)介紹了Android利用Canvas標(biāo)點(diǎn)畫線并加入位移動(dòng)畫的第一篇,文中示例代碼介紹的非常詳細(xì),具有一定的參考價(jià)值,感興趣的小伙伴們可以參考一下2022-09-09Android Studio 2020新版本卡在Gradle downloading/sync failed/下載緩慢/
Android Studio 2020新版本 卡在Gradle downloading / sync failed / 下載緩慢 / 下載超時(shí) 親測有效解決辦法,本文給大家介紹的非常詳細(xì),對大家的學(xué)習(xí)或工作具有一定的參考借鑒價(jià)值,需要的朋友參考下吧2020-12-12Android實(shí)現(xiàn)跟隨手指拖動(dòng)并自動(dòng)貼邊的View樣式(實(shí)例demo)
本文通過實(shí)例代碼給大家介紹了android實(shí)現(xiàn)跟隨手指拖動(dòng)并自動(dòng)貼邊的View樣式,效果非常棒,具有參考借鑒價(jià)值,需要的朋友參考下吧2017-01-01Android實(shí)現(xiàn)ListView異步加載圖片的方法
這篇文章主要介紹了Android實(shí)現(xiàn)ListView異步加載圖片的方法,以實(shí)例形式較為詳細(xì)的分析了Android中ListView異步加載圖片的原理與相關(guān)實(shí)現(xiàn)技巧,具有一定參考借鑒價(jià)值,需要的朋友可以參考下2015-10-10