2015-05-10 30 views
0

當我嘗試放大里面onMarkerClick它似乎聽變焦只是一個splitsecond,然後停下來,它不知怎的,動畫到,雖然在的LatLng權..的Android變焦onMarkerClick裏面失敗

public class MapsActivity extends FragmentActivity implements GoogleMap.OnMarkerClickListener, GoogleMap.OnMapClickListener { 
GoogleMap mMap; 
.... 
    public boolean onMarkerClick(Marker marker) { 
     if(marker.equals(myExampleMarker)) { 
      mMap.animateCamera(CameraUpdateFactory.newLatLngZoom(new LatLng(LatLng, zoomLevel)); 
     } 
    } 
} 

這會將相機設置爲我所輸入的所需LatLng,但不知何故,Zoomlevel只是在正確的方向上調整一點點,但在一秒之後停止。在OnMarkerClick內部改變縮放級別有問題嗎?如果是的話,我該如何解決這個問題?

回答

0

我認爲你可以嘗試做一個Handler和一點點delay進行縮放。

示例代碼:

public class MapsActivity extends FragmentActivity implements GoogleMap.OnMarkerClickListener, GoogleMap.OnMapClickListener { 
GoogleMap mMap; 
.... 
    public boolean onMarkerClick(Marker marker) { 
     if(marker.equals(myExampleMarker)) { 
      new Handler().postDelayed(new Runnable() { 
       @Override 
       public void run() { 
        mMap.animateCamera(CameraUpdateFactory.newLatLngZoom(new LatLng(LatLng, zoomLevel)); 
       } 
      }, 300); 
     } 
    } 
}