Android MapView Overlay总能保持选择OverlayItem吗?

时间:2010-02-13 14:47:14

标签: android overlay android-mapview

我想将一个ItemizedOverlay添加到一个总是保留一个的MapView OverlayItem作为选定的一个。我用a表示这个 StateListDrawable有两个不同的标记drawables。

但是现在,每当我点击地图而不是击中标记时, 最后选择的项目将被取消选中。但我总是想保留 选择最后一项,直到新的项目被击中。

我已经试图拦截,例如onTap,但这只能让我 完全禁用水龙头处理。这意味着现在我甚至不能再选择另一个标记了。

有关于此的建议吗?

1 个答案:

答案 0 :(得分:0)

我在Android开发者ml上得到了答案。我认为如果mapview本身没有bug,这将是正确的解决方案。

http://code.google.com/p/android/issues/detail?id=6752

这里提出的解决方案:

跟踪上次选择的项目。在onTap()中,如果currentFocus()为null,则将setFocus()设置为您保存的最后一个选定项目。如果它不为空,请更新您的参考。

您也可以使用相同的想法,但在ItemizedOverlay上使用OnFocusChangeListener来确定新项目是否已成为焦点。

相关问题