2014-03-31 63 views
1

嗨我想改變相機在不同的位置與動畫。會發生什麼事情是,當地圖打開時,它會放大到一個位置,然後停止6秒,然後移動到另一個位置並使用相機動畫。我的問題是,當這完成後,我如何創建第三個位置,然後將相機從第二個位置移動到第三個位置?任何想法的傢伙?謝謝。這是我的代碼。安卓谷歌地圖移動相機到不同的位置與動畫

public class THEMAP extends Activity { 

    @Override 
    protected void onCreate(Bundle savedInstanceState) { 
    super.onCreate(savedInstanceState); 
    setContentView(R.layout.activity_main); 
    GoogleMap map = ((MapFragment) getFragmentManager() 
      .findFragmentById(R.id.map)).getMap(); 

    LatLng loc1 = new LatLng(41.889, -87.622); 
    LatLng loc2 = new LatLng(45.889, -87.622); 
    LatLng loc3 = new LatLng(49.889, -87.622); 



    map.moveCamera(CameraUpdateFactory.newLatLngZoom(loc1, 10)); 

    map.animateCamera(CameraUpdateFactory.zoomIn()); 
    map.animateCamera(CameraUpdateFactory.zoomTo(10), 6000, null); 

    map.addMarker(new MarkerOptions() 
      .icon(BitmapDescriptorFactory.fromResource(R.drawable.green)) 
      .position(loc2) 
      .flat(true) 
      .rotation(245)); 

    map.addMarker(new MarkerOptions() 
    .icon(BitmapDescriptorFactory.fromResource(R.drawable.green)) 
    .position(loc1) 
    .flat(true) 
    .rotation(245)); 

    map.addMarker(new MarkerOptions() 
    .icon(BitmapDescriptorFactory.fromResource(R.drawable.green)) 
    .position(loc3) 
    .flat(true) 
    .rotation(245)); 


    CameraPosition cameraPosition = new CameraPosition.Builder() 
    .target(mapCenter2)  
    .zoom(8)     
    .bearing(90)     
    .tilt(30)     
    .build();     



    map.animateCamera(CameraUpdateFactory.newCameraPosition(cameraPosition), 
    8000, null); 

    } 

    } 

的問題是,如果我添加另一個地點+標記,並嘗試做上面的代碼,地圖動畫只有第三個位置,忽略了第二位置的動畫。任何建議傢伙?請幫助。

CameraPosition cameraPosition2 = new CameraPosition.Builder() 
    .target(loc3)  
    .zoom(8)     
    .bearing(90)    
    .tilt(30)     
    .build();     



    map.animateCamera(CameraUpdateFactory.newCameraPosition(cameraPosition2), 
    8000, null); 

回答