Android错误致命异常:java.lang.NullPointerException

时间:2018-02-22 15:34:41

标签: android nullpointerexception adapter

我使用Fabric Crashlytics发布了一个应用程序,在最后几天我收到了此错误崩溃用户:

致命异常:java.lang.NullPointerException 尝试调用虚方法' void ... android.controller.CustomListAdapter.notifyDataSetChanged()'在空对象引用上

受影响的片段代码如下:

from pathlib import Path
cwd = Path(__file__).parents[0]

行错误是adpater.notifyDataSetChanged(); 在我的设备上,我没有任何崩溃。 有什么帮助吗? 感谢

2 个答案:

答案 0 :(得分:1)

错误是由于其他部分造成的。如果不满足if(Globals.geoJsonResponse.size() == 0),就会发生这种情况。

else {
    //Log.e("test", "bbb:"+globalResponseObject.size());
    globalResponseObject.clear();
    for(GeoJsonResponse geo_response:Globals.geoJsonResponse)
    {
        if((geo_response.getMagnitude()>=lowerLimit&&geo_response.getMagnitude()<upperLimit)) globalResponseObject.add(geo_response);
    }
    sort();
    adpater.notifyDataSetChanged();
}

您必须在此块或请求方法之外初始化适配器。

另请阅读this

答案 1 :(得分:1)

我认为您没有初始化适配器。你只是初始化它

    if ( Globals.geoJsonResponse.size() == 0 ) {
        ....
        adpater=new  CustomListAdapter(getActivity(), globalResponseObject);
        geoJSON.setAdapter(adpater);
    } else {
        ....
        adpater.notifyDataSetChanged();
    }