我正在构建一个Android应用程序,我在其中下载包含要在GoogleMap上显示的内容的XML文件。信息窗口是可点击的,所以区分不同的窗口我使用Hashmap。无法访问散列图
无论何时地图加载它崩溃与NullPointerException。 HashMap的被命名为markerEntryHashMap,这里的一些代码:
private class DownloadXmlTask extends AsyncTask<String, Void, String> {
/**
* Hashmap with marker; String ids as key, entry obj as value
*/
private HashMap<String, CurvitVacatureXmlParser.Entry> markerEntryHashMap;
@Override
protected String doInBackground(String... urls) {
[...]
}
@Override
protected void onPostExecute(String result) {
for (CurvitVacatureXmlParser.Entry entry : mapEntries) {
[...]
Log.d(TAG, "Marker ID: " + m.getId()); // OK; Marker ID: m0
Log.d(TAG, "Entry ID: " + entry.id); // OK; Entry ID: 12
// there is no unique identifier in an info-window so I thought using the hashmap to differentiate later on in an OnInfoWindowClickListener
// This crashes: FATAL EXCEPTION: main java.lang.NullPointerException
markerEntryHashMap.put(m.getId(), entry);
}
}
}
任何你们/加仑发现错误了吗?
你可以发布你的空指针栈跟踪 – Babel
你初始化了你的地图吗? 'markerEntryHashMap = new HashMap <>();' –