我试图像Whatsapp聊天一样在滚动条上加载更多数据到顶部recyclerview。
我的适配器包含多个视图
我从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)
linearlayoutmanger为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的旧项目
答案 0 :(得分:1)
我已经通过如下重置适配器来解决了这个问题:
recyclerview.setAdapter(privateChatAdapter);
将数据添加到arraylist中的零位置之后
可能是因为视图项存储在recyclerview的缓存中