3

その上に地図とマーカーがあります。ユーザーがこのマーカーを押すか、このマーカーの近くを押すと、アプリは「onMapClickリスナー」を実行し、「onMarkerClick」の代わりにクリックの座標を返す必要があります。1 つのマーカーのマーカー クリックを無視して、代わりに onMapClick を作成することは何とか可能ですか?

私はこれを試しましたが、何もしません:

mMap.setOnMarkerClickListener(新しいOnMarkerClickListener(){

      @Override
      public boolean onMarkerClick(Marker arg0) {             
           if(arg0.getSnippet().equals("bad_marker")){

                   mMap.setOnMapClickListener(new OnMapClickListener() {        
                  @Override
                  public void onMapClick(LatLng latLng) {                             
                      mapClick(latLng); 
                  }       
             });
             }});
4

1 に答える 1

0

マーカーをクラス変数に保存して、それを参照できるようにします。

次に、 を設定し、OnMarkerClickListenerarg0 がマーカーかどうかを確認します。そうであれば、ユーザーがそのマーカーをクリックした場合に必要なことを行います。

また、 を設定して、setOnMapClickListener指定された latLngonMapClickがマーカーの位置に近いかどうかを確認します。クラス変数としてマーカーを持っているので、その位置を取得して、ユーザーがクリックした地図上の位置と照合できます。

于 2013-10-17T08:16:37.340 に答える