鍍金池/ 問答/Android  Linux/ mContext為空?

mContext為空?

另一個(gè)類的參數(shù)為空,導(dǎo)致點(diǎn)擊事件沒響應(yīng)
圖片描述


public class CartProvider {

public static final String JSON_CART = "json_cart";
private Context mContext;

//優(yōu)化過的HashMap集合
private  SparseArray<GoodsBean> datas;

private static CartProvider cartProvider;

private  CartProvider(Context mContext) {
    this.mContext = mContext;
    datas = new SparseArray<>(100);
    listToSparse();
}
    public static CartProvider getInstance() {
    if (cartProvider == null) {
        cartProvider = new CartProvider(MyApplication.getContext());
    }
    return cartProvider;
}
回答
編輯回答
野橘

你這里是一個(gè)私有的構(gòu)造方法
private CartProvider(Context mContext) {

this.mContext = mContext;
datas = new SparseArray<>(100);
listToSparse();

}
可能你實(shí)例化時(shí)用的是無參數(shù)的構(gòu)造方法:
CartProvider cartProvider = new CartProvider()
mContext 這時(shí) 為null

2017年3月20日 06:00
編輯回答
久不遇

去debug,找mContext被賦值為null的地方

2017年1月17日 04:15
編輯回答
愛礙唉

就現(xiàn)在來看,你貌似沒有 new CartProvider

2018年2月14日 15:54