2009-11-20 55 views
1

由于拍摄地点......如何从MapActivity

  • 从MapActivity
  • 延伸
  • 使用ItemizedOverlay显示地图
  • ZoomControls启用

的一些气球的活动ItemizeOverlay实现onTap(...),当点击其中一个覆盖项目时,它可以很好地工作。

的问题是:如何识别一个水龙头在地图上的另一部分(与得到的位置和center'ing在这一点上的意图)

回答

2

您应该能够创建一个“隐形”覆盖(就是说,您不要在onDraw中绘制任何东西)位于MapView的叠加列表的前面,并且在onTap中,将地图中心设置为MapController.setCenter

引述MapView.getOverlays文档中有关叠加顺序:

在这个列表中的任何重叠将被吸引(顺序递增),并将收到的事件(按递减顺序,直到一个返回true)。如果修改列表,您可能需要调用View.postInvalidate(),以便更改对用户可见。

+0

@ Gray-M:这是否工作?如果没有,请评论和/或编辑原始问题,以便我或其他人可以跟进。 – 2010-02-01 10:18:59

+0

对不起,被放在另一个项目。 我已经做了一个快速的私人测试,这似乎解决了这个问题,虽然我还没有能够完全测试它。 – 2010-06-02 14:37:52