2013-07-02 131 views
1

我正在開發一個顯示Google地圖的Android應用程序。我希望這張地圖以用戶的位置爲中心,並旋轉到用戶的方向和傾斜。 描述的行爲可以在Google Maps應用程序中看到;當您點擊一次位置按鈕時,它會將地圖置於您的位置中心。當第二次點擊時,它會實現所描述的行爲。Google地圖Android api V2激活指南針和傾斜模式

如何使用Google Maps API實現此目標?我可以通過編程來激活它嗎?
有什麼建議嗎?

回答

2

爲了設置位置在地圖的中央,使用方法:

map.moveCamera(CameraUpdateFactory.newLatLng(new LatLng(lat, lng))); 

那麼你真的應該看看從文檔CameraPosition.Builder()類。你會得到所有的答案,但我會告訴你它是如何被使用的例子:

CameraPosition cameraPosition = new CameraPosition.Builder(). 
      target(location). 
      tilt(degrees). 
      zoom(zoom). 
      bearing(bearing). 
      build(); 
map.animateCamera(CameraUpdateFactory.newCameraPosition(cameraPosition)); 
+0

是否有任何自動程序通過用戶位置/方向更新相機?我需要自己編程嗎? – Mateu

+0

正如我所說的,你將不得不使用CameraPosition類自己編程。 – Carnal

0

@肉慾的回答是有幫助的,但我認爲這並不完全回答你的問題。

不幸的是,Google仍然沒有在Google Maps API中實現此功能,因此您必須手動執行此操作。

首先,您需要創建一個CameraPosition,如@Carnal所示。其次,如果你想讓地圖旋轉指南針的方式,那麼有很多關於獲取指南針值的很好的教程。這裏有一個:http://www.journal.deviantdev.com/android-compass-azimuth-calculating(使用指南針值的.bearing()財產上的CameraPosition

最後,調用map.animateCamera(CameraUpdateFactory.newCameraPosition(cameraPosition));移動地圖的「相機」

希望這有助於!