Bog*_*iel 1 android android-studio android-recyclerview
我一直在关注此页面,将内容添加到Endless Scroll RecyclerView中,底部带有ProgressBar,我认为我做对了所有事情,但是由于某种原因,我回到了这一行onLoadMoreListener.onLoadMore();
java.lang.NullPointerException: Attempt to invoke virtual method 'boolean android.os.Handler.postDelayed(java.lang.Runnable, long)' on a null object reference
Run Code Online (Sandbox Code Playgroud)
我知道有很多有关空指针错误的文章,但是该行在if语句中,如果为空则不应执行。
if (onLoadMoreListener != null) {
onLoadMoreListener.onLoadMore();
}
Run Code Online (Sandbox Code Playgroud)
为什么会这样呢?我应该发布什么代码来帮助解决问题?
mAdapter.setOnLoadMoreListener(new MyAdapter.OnLoadMoreListener() {
@Override
public void onLoadMore() {
//add progress item
myDataset.add(null);
mAdapter.notifyItemInserted(myDataset.size() - 1);
handler.postDelayed(new Runnable() {
@Override
public void run() {
//remove progress item
myDataset.remove(myDataset.size() - 1);
mAdapter.notifyItemRemoved(myDataset.size());
MyRecyclerItems gridItem= new MyRecyclerItems();
gridItem.setAbout("Test");
gridItem.setEmail("tesssst@gmail.com");
myDataset.add(0,gridItem);
mAdapter.notifyItemInserted(myDataset.size());
mAdapter.setLoaded();
}
}, 2000);
System.out.println("load");
}
});
Run Code Online (Sandbox Code Playgroud)
小智 5
此错误意味着处理程序为空。
只需在调用post方法之前初始化处理程序对象,如下所示:
handler=new Handler();
Run Code Online (Sandbox Code Playgroud)
| 归档时间: |
|
| 查看次数: |
11057 次 |
| 最近记录: |