2017-01-17 97 views
1

我正在編寫一個導航應用程序,我需要在用戶周圍旋轉攝像頭(因此,相對於用指南針旋轉用戶圖標,攝像頭圍繞用戶旋轉給出了地圖的印象旋轉按照現實生活)基於用戶方位的Mapbox旋轉地圖

我似乎無法找到一個默認模式要做到這一點我已經試過方位跟蹤模式(GPS和指南針),以及位置追蹤模式:

mapboxMap.getTrackingSettings().setMyLocationTrackingMode(MyLocationTracking.TRACKING_FOLLOW); 

因爲我無法讓它工作,我實現了一個自定義指南針,帶有一個基本的低通濾鏡,以便在相機周圍旋轉相機SER。但是,從Mapbox 4.1.1升級到4.2.1後,我的自定義實現已經中斷(旋轉變得非常滯後並且非常鋸齒)。

我相信有一個更簡單的方法來做到這一點,但我有點麻煩搞清楚了。有人能否告訴我我是否以正確的方式開展工作,或者是否有更容易解決的問題?

謝謝先進!

回答

4

來跟蹤用戶的位置和旋轉地圖的方位總是在相同的方向指向用戶,使用這些線組合:

mapboxMap.getTrackingSettings().setMyLocationTrackingMode(MyLocationTracking.TRACKING_FOLLOW); 

mapboxMap.getTrackingSettings().setMyBearingTrackingMode(MyBearingTracking.COMPASS); 

注意爲完整的代碼,我建議你檢查出this example

+2

感謝。正如一個筆記,在我的情況下,這條線所有的區別: 'map.getTrackingSettings()。setDismissAllTrackingOnGesture(false);' – SCTaylor

+0

嗨,我試圖實現相同的結構。但我從外部圖書館獲得我的位置。沒有'map.setMyLocationEnabled(true);'這一行的任何方式來完成用戶跟蹤。出於某些原因,我不希望Mapbox自定義'myLocation'指針在地圖上。請幫忙嗎? – FARID

+2

示例鏈接已損壞;我們現在怎麼做?看起來代碼已被/由LocationLayer插件取代,但它似乎沒有「FOLLOW」模式。 – HEATH3N

0

是爲@SCTaylor說,你絕對需要.setDismissAllTrackingOnGesture(false),使這項工作