java RecyclerAdapter不加载数据,除非我刷新
这是我在主FeedActivity中初始化适配器的方式:
RecyclerView recyclerView = (RecyclerView) findViewById(R.id.recyclerView);
recyclerView.setLayoutManager(new LinearLayoutManager(this));
recyclerView.setHasFixedSize(true);
FeedAdapter adapter = new FeedAdapter(FeedActivity.this, retrieveYeets());
recyclerView.setAdapter(adapter);
这是我的错误:
java.lang.NullPointerException: Attempt to invoke interface method 'int java.util.List.size()' on a null object reference
at com.yitter.feed.FeedAdapter.getItemCount(FeedAdapter.java:478)
at 安卓.support.v7.widget.RecyclerView.dispatchLayoutStep1(RecyclerView.java:3170)
at 安卓.support.v7.widget.RecyclerView.dispatchLayout(RecyclerView.java:3067)
at 安卓.support.v7.widget.RecyclerView.onLayout(RecyclerView.java:3518)
at 安卓.view.View.layout(View.java:16636)
at 安卓.view.ViewGroup.layout(ViewGroup.java:5437)
at 安卓.support.v4.widget.SwipeRefreshLayout.onLayout(SwipeRefreshLayout.java:598)
at 安卓.view.View.layout(View.java:16636)
at 安卓.view.ViewGroup.layout(ViewGroup.java:5437)
at 安卓.widget.RelativeLayout.onLayout(RelativeLayout.java:107
它在抱怨我的FeedAdapter中的以下代码:
@Override
public int getItemCount() {
return mYeets.size();
}
我不知道为什么我的名单是空的。显然,在我的列表中有一个NullPointerException,但它并不明显。这可能与列表中元素的位置有关。有人有什么建议吗
# 1 楼答案
我认为问题就在这里
你忘了在开头加上“this”