当我们使用RecyclerView不想要 适配器(Context,mDatas)。
我们可以在Adapter的getItemCount运用上我们的三目运算符。
mDatas == null ? 0: mDatas.size()
列子
@Override
public int getItemCount() {
return mData == null ? 0: mData.size();
}
这样子当你的Adapter还没有设置数据源的时候,返回的是0。列表空空如也不会闪退。
java.lang.NullPointerException: Attempt to invoke interface method 'int java.util.List.size()' on a null object reference
第二种方法
在你Adapter的构造方法里面为你的列表进行初始化操作。
public AppInfoAdapter(Context context) {
this.context = context;
mData = new ArrayList<AppBean.Text>();
}
然后getItemCount方法可以写mData.size或者第一种方法的三目运算符。