簡體   English   中英

在 recyclerview 中滾動到頂部加載更多數據

[英]load more data on scroll to top in recyclerview

我試圖在滾動到頂部 recyclerview 時加載更多數據,例如 Whatsapp chat 。
我的適配器包含多個視圖
我從 sqlite 加載幾行以顯示在 recyclerview 中,並在滾動頂部時加載更多數據。 當我加載更多數據時,應用程序崩潰

02-20 22:57:01.324 6833-6833/ E/AndroidRuntime: FATAL EXCEPTION: main
Process: , PID: 6833
java.lang.NullPointerException
    at .adapters.PrivateChatAdapter$ViewHodler.setSenderMsg(PrivateChatAdapter.java:208)
    at .adapters.PrivateChatAdapter.onBindViewHolder(PrivateChatAdapter.java:124)
    at .adapters.PrivateChatAdapter.onBindViewHolder(PrivateChatAdapter.java:46)

線性布局管理器是linearLayoutManager.setStackFromEnd(true);

0     <---- i want to load the new data here
1
2    
3
4    
5
6

當我將新數據添加到 arraylist 時

arrayMsgs.add(0, new PrivateMsg.Builder(PrivateMsg.LOADING_MORE_MSG, 0, true).build());
privateChatAdapter.notifyItemInserted(0);

位置 0 的舊項重復

我通過如下重置適配器解決了這個問題:

recyclerview.setAdapter(privateChatAdapter);

將數據添加到 arraylist 中的位置零后
可能是因為視圖項存儲在 recyclerview 的緩存中

暫無
暫無

聲明:本站的技術帖子網頁,遵循CC BY-SA 4.0協議,如果您需要轉載,請注明本站網址或者原文地址。任何問題請咨詢:yoyou2525@163.com.

 
粵ICP備18138465號  © 2020-2024 STACKOOM.COM