0

ItemizedOverlayをMapViewに追加して、常に1つのOverlayItemを選択されたものとして保持したいと思います。これは、2つの異なるマーカードローアブルでStateListDrawableを使用して示します。

しかし、今のところ、マップをタップしてマーカーを押さないと、最後に選択されたアイテムの選択が解除されます。しかし、私は常に、新しいアイテムがヒットするまで、最後に選択されたアイテムを保持したいと思っています。

私はすでにonTapなどを傍受しようとしましたが、これではタップ処理を完全に無効にすることしかできません。これは、もう別のマーカーを選択することさえできないことを意味します。

これについて何をすべきか提案はありますか?

4

1 に答える 1

0

私はアンドロイド開発者mlで答えを得ました。マップビュー自体にバグがなければ、これが正しい解決策になると思います。

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

ここで提案された解決策:

最後に選択したアイテムを追跡します。onTap()で、currentFocus()がnullの場合、最後に選択した項目にsetFocus()を保存します。nullでない場合は、参照を更新してください。

同じアイデアを使用することもできますが、ItemizedOverlayでOnFocusChangeListenerを使用して、新しいアイテムがフォーカスされているかどうかを判断します。

于 2010-02-21T16:21:03.410 に答える