overlay,overlayitem和itemizedoverley之间的混淆

时间:2012-12-02 16:55:08

标签: android google-maps overlay itemizedoverlay

我想创建一个显示地图的应用程序,在此地图之上,道路和兴趣点将被绘制为线条和椭圆形。这些线条和椭圆形将附加听众,以便用户可以拖动它们或删除它们。

我正在使用osmdroid的openstreetmaps,但它似乎与谷歌地图完全一样。

我正在考虑扩展OverlayItem类来表示兴趣点或道路。 Overlay类将被扩展并包含这些扩展OverlayItems的ArrayList。

Overlay类的draw方法将被覆盖,并将绘制arraylist中包含的所有OverlayItem。

然后将此Overlay类添加到MapView。

我不确定这是否可行,因为很多教程都使用了ItemizedOverlay。究竟是什么,我应该使用它吗?

由于

2 个答案:

答案 0 :(得分:1)

ItemizedOverlay是一个扩展Overlay(正如您想要做的)并且大部分已完成的类(您仍然需要扩展它并填充特定部分)以添加{{ 1}}到指定Drawables的地图(使用Geopoints列表)。它还为添加的项目实施OverlayItem

所以底线onTap()是一个预先编码的类,旨在瞄准您的目标。

<强>限制

它可能不是所有叠加层的最佳解决方案......

使用自己的calss扩展叠加层的示例:

  • 如果您的ItemizedOverlay需要POI需要旋转。{li> 运行时(即指向变化方向的箭头)
  • 如果您想绘制没有标记的路线
  • 如果你想绘制一些不容易用可绘制的东西

问候。

答案 1 :(得分:0)

ItemizedOverlay基本上就是你所说的:它包含了要绘制的OverlayItem个对象的逐项列表。