3

OnMarkerClickListenerをマップに追加しました。マーカーをタップすると、OnMarkerClickListenerが呼び出され、AlertDialogが表示されます。ただし、AlertDialogをキャンセルして同じマーカーをもう一度タップすると、OnMarkerClickListenerが呼び出されません。これが私のOnMarkerClickListenerです:

googleMap.setOnMarkerClickListener(new OnMarkerClickListener() {

  @Override
  public boolean onMarkerClick(final Marker marker) {

    AlertDialog.Builder builder = new AlertDialog.Builder(
        DirectionsActivity.this);
    builder.setMessage(marker.getSnippet());
    builder.setTitle(marker.getTitle());
    builder.setPositiveButton("Open in Google Maps",
        new OnClickListener() {

          // ...
          }
        });

    builder.setNegativeButton("Cancel", null);

    AlertDialog dialog = builder.create();
    dialog.show();

    return false;
  }
});

地図を移動またはズームするだけで、同じマーカーをさらにクリックできます。このため、OnMarkerClickListener.onMarkerClickが返さtrueれると、クリックされたマーカーの中央にマップを配置するなどのデフォルトの処理が実行され、同じマーカーを2回クリックできますが、3回目以降のクリックでは何も実行されません。 。したがって、問題は、マップのズームまたは中心が変更されるまで、同じマーカーのクリックが認識されないことであるように思われます。

ビットマップから派生したカスタムアイコンがあることを除いて、マーカーで特別なことは何もしていません。

他にこの問題を抱えている人はいますか?間違っている可能性があることを確認する必要がありますか?それとも、これは既知の問題ですか?

4

2 に答える 2

2

ここでループを閉じるだけで、これはバグであることがわかります。bbalazsはここでバグレポートを作成しました:http ://code.google.com/p/gmaps-api-issues/issues/detail?id = 4829しかし、このバグレポートの複製としてマージされました:http://code。 google.com/p/gmaps-api-issues/issues/detail?id=4760

スターアイコンをクリックすると、http://code.google.com/p/gmaps-api-issues/issues/detail ?id=4760に投票できます。

于 2013-01-23T13:14:33.223 に答える
0

'onMarkerClick'メソッドで、戻り値を'true'に設定します。

于 2014-06-11T10:27:57.053 に答える