我有一个简单的Google地图叠加层:http://pastebin.com/Rg8miMSh我根据缩放级别添加/删除项目。删除/添加后,我在覆盖上填充填充并在地图视图上无效。一切正常,除了1个小问题:删除一个项目之后,如果我点击其位置onTap仍然被触发,因为OverlayItem不再存在,我在中得到 java.lang.ArrayIndexOutOfBoundsException com.google.android.maps.ItemizedOverlay.maskHelper(ItemizedOverlay.java:562 )(完整堆栈跟踪 - http://pastebin.com/KThn4ZLE)
有谁知道为什么会这样?最初我打电话给clear并再次添加所有项目,这似乎不会导致这个问题。然而,有许多项目这成为一个性能问题。仅添加/删除差异的速度要快得多,我想保留这种方法。 谢谢!
答案 0 :(得分:8)
我通过调用“setLastFocusedIndex(-1);”解决了这个问题。在“doPopulate()”中。