當我們使用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或者第一種方法的三目運算符顿痪。