首页
学习
活动
专区
圈层
工具
发布
社区首页 >问答首页 >扩展的OverlayItem导致程序与NullPointerException崩溃

扩展的OverlayItem导致程序与NullPointerException崩溃
EN

Stack Overflow用户
提问于 2012-12-06 17:43:05
回答 1查看 82关注 0票数 1

我有一个类,它扩展了OverlayItem以包含更多的字段。我用一个OverlayItem类更改了我的程序中的所有PointOfInterest事件。

当我试图运行与OverlayItem相同的程序时,在调用nullpointerException类中的populate()后,它会与nullpointerException崩溃。日志打印出正确的值。下面是它崩溃的方法。

代码语言:javascript
复制
protected void addOverlay(PointOfInterest pointOfInterest) {

    mapOverlays.add(pointOfInterest);
    setLastFocusedIndex(-1);
    Log.d("Add Overlay", pointOfInterest.getDescription());
    populate(); <-- Crashes here
}

和错误

代码语言:javascript
复制
12-06 17:29:03.610: E/AndroidRuntime(1822): java.lang.NullPointerException
12-06 17:29:03.610: E/AndroidRuntime(1822):     at com.google.android.maps.ItemizedOverlay.populate(ItemizedOverlay.java:312)
12-06 17:29:03.610: E/AndroidRuntime(1822):     at com.example.mapproject.OurItemizedOverlay.addOverlay(OurItemizedOverlay.java:108)
12-06 17:29:03.610: E/AndroidRuntime(1822):     at com.example.mapproject.MainActivity.addPointToMap(MainActivity.java:211)

有什么想法吗?谢谢!

EN

回答 1

Stack Overflow用户

回答已采纳

发布于 2012-12-06 20:13:27

我没有提到传递给addOverlay方法的addOverlay是从JSON字符串创建的,因此构造函数包含

代码语言:javascript
复制
super(point, title, snippet)

从未被召唤过。

我将其添加到我的addOverlay方法中,该方法似乎已经对其进行了排序!

代码语言:javascript
复制
protected void addOverlay(PointOfInterest pointOfInterest) {

    PointOfInterest pointOfInterest2 = new PointOfInterest(pointOfInterest.title,pointOfInterest.title,pointOfInterest.type,pointOfInterest.point,pointOfInterest.privateField);
    mapOverlays.add(pointOfInterest2);
    setLastFocusedIndex(-1);
    Log.d("Add Overlay", pointOfInterest2.getSnippet());
    populate();

}
票数 0
EN
页面原文内容由Stack Overflow提供。腾讯云小微IT领域专用引擎提供翻译支持
原文链接:

https://stackoverflow.com/questions/13749374

复制
相关文章

相似问题

领券
问题归档专栏文章快讯文章归档关键词归档开发者手册归档开发者手册 Section 归档