nuk*_*rum 5 android google-maps
这是我上一个问题的后续内容:ClusterManager不重绘标记
我做了一些调查,发现了一些有趣的东西.ClusterManager.clearItems()并不总是清除物品.
在ClusterManager我运行此块后添加一个标记:
mClusterManager.clearItems();
Log.d(TAG, "Marker list is empty: " + String.valueOf(mClusterManager.getMarkerCollection().getMarkers().isEmpty()));
for (Marker m : mClusterManager.getMarkerCollection().getMarkers()) {
Log.d(TAG, m.getId() + "| " + m.getPosition());
}
Run Code Online (Sandbox Code Playgroud)
其中提供以下输出:
02-03 12:30:52.953 14328-14328/com.app.mobile D/app:MapsActivity: Marker list is empty: false
02-03 12:30:52.954 14328-14328/com.app.mobile D/app:MapsActivity: m7| lat/lng: (33.2980945,-111.953964)
Run Code Online (Sandbox Code Playgroud)
尽管有明确的被召唤,它永远不会是空的.这里发生了什么?
如果它永远不会清空,是否添加了更新m7 Marker到ClusterManager忽略?
我最终发现我hashCode()的实现中的覆盖实现Marker导致通常的替换/删除/清除功能发生故障。
我的解决方案是删除我的实现hashCode()并解决我对自定义哈希解决方案的需求。
| 归档时间: |
|
| 查看次数: |
1640 次 |
| 最近记录: |