2016-08-03 40 views
0

我有一個帶有自定義信息窗口的Google地圖。此外,我添加了一些用於在點擊標記/引腳時將信息窗口居中的邏輯。從我讀到的問題是重寫setOnMarkerClickListener。雖然我明確設置了mMap.getUiSettings().setMapToolbarEnabled(true); 這不起作用。這裏是我的代碼:導航按鈕「和」GPS指針「在我點擊標記時不可見

mMap.setOnMarkerClickListener(new GoogleMap.OnMarkerClickListener() { 

     @Override 
     public boolean onMarkerClick(final Marker marker) { 

      // Description: Get device height 
      // ------------------------------------------------------------------------------------ 
      WindowManager wm = (WindowManager) view.getContext().getSystemService(Context.WINDOW_SERVICE); 
      Display display = wm.getDefaultDisplay(); 
      Point size = new Point(); 
      display.getSize(size); 
      int height = size.y; 

      // Description: Move the camera up so title of info window is visible 
      // ------------------------------------------------------------------------------------ 
      LatLng markerLocation = marker.getPosition(); 
      Point mappoint = mMap.getProjection().toScreenLocation(new LatLng(markerLocation.latitude, markerLocation.longitude)); 
      mappoint.set(mappoint.x, mappoint.y - (height/3)); 

      CameraUpdate cu = CameraUpdateFactory.newLatLng(mMap.getProjection().fromScreenLocation(mappoint)); 

      mMap.getUiSettings().setMapToolbarEnabled(true); 

      mMap.animateCamera(cu, new GoogleMap.CancelableCallback() { 

       @Override 
       public void onFinish() { 
        if (marker != null) { 

         marker.showInfoWindow(); 

         mMap.getUiSettings().setMapToolbarEnabled(true); 
        } 
       } 

       @Override 
       public void onCancel() { 
       } 
      }); 

      return true; 
     } 
    }); 

回答

2

我有這個問題,你的onMarkerClick返回false,以便顯示默認行爲。