我理解的是打破在這一行代碼一個NullPointerException:Android的 - NullPointerException異常
if (options.isVisible()) {
這裏是代碼塊:我猜
protected static GoogleMap map;
protected static MarkerOptions markerOptions;
private OnMarkerCreateListener listener;
public LazyMarker(GoogleMap map, MarkerOptions options) {
this(map, options, null);
}
public LazyMarker(GoogleMap map, MarkerOptions options, OnMarkerCreateListener listener) {
if (options.isVisible()) {
createMarker(map, options, listener);
} else {
this.map = map;
this.markerOptions = copy(options);
this.listener = listener;
}
}
它做與MarkerOptions變量,但我不知道它是否因爲它沒有被初始化而中斷?任何幫助將不勝感激。
是的!創建LazyMarker實例時,您正在傳遞'MarkerOptions'的空引用。 – yugidroid 2013-05-07 21:17:01
如果你正在使用一些代碼,首先不要以不好的方式修改它:'protected static'有一個很好的原因是'private'非靜態的。這種變化可能是你問題的根源。無論如何,如果你直接使用這個類,在創建'LazyMarker'時發送一個正確的參數。像'新的MarkerOptions()。位置(新的LatLng(30,30))''。如果您將此類用作Android地圖擴展的一部分,請將正確的參數發送到'GoogleMap.addMarker(MarkerOptions)'。 – 2013-07-26 13:50:36